SMF Development > Fixed or Bogus Bugs

[4905] Extra Signature Space Bug

(1/2) > >>

RayRay26:
I found out that you can go above 500 characters in your signature for one edit. I had an urge to see if you could just remove part of a Simple Machines url and see if it worked like any url. It's temporary though, leaving you with having to redo some stuff. It has to be a Simple Machines forum (or the forum you are on) url though.

* Copy a Simple Machines page url, such as http://www.simplemachines.org/community/index.php?topic=topicid.0 (this link doesn't work by the way)
* Delete the http://www.simplemachines.org/community/index.php, leaving you with '?topic=topicid.0'.
* When you click the link, you'll see that it still works.That's because it adds back in http://www.simplemachines.org/community/index.php into your signature, BUT it doesn't delete any of the extra at the end, leaving you with an extended signature. (if you edit your sig again, you'll see the extra text is already deleted, but that doesn't mean it's gone (until you update again as it is))

I did do a search on this board about this and didn't find it.

emanuele:
Hi RayRay26!

Thanks for the report.
Could you please explain what do you mean with "the extra at the end"? (a screenshot would be useful)

emanuele:
* emanuele sometime is completely blind...or simply doesn't read everything... :P
Now I got it.
Yes, I think it can be considered a bug.

Illori:
then can you report it?

emanuele:
Looking into this.

The simplest way to fix it I can think of is to...preparse it twice...


--- Code: (find) --- // Too long?
if (!empty($sig_limits[1]) && $smcFunc['strlen']($unparsed_signature) > $sig_limits[1])
{
$_POST['signature'] = trim(htmlspecialchars($smcFunc['substr']($unparsed_signature, 0, $sig_limits[1]), ENT_QUOTES));

--- End code ---


--- Code: (replace with) --- // Lenght is something particular...unfortunately...
$unparsed_signature_length = $unparsed_signature;
preparsecode($unparsed_signature_length);
$unparsed_signature_length = str_replace('<br />', "\n", $unparsed_signature_length);

// Too long?
if (!empty($sig_limits[1]) && $smcFunc['strlen']($unparsed_signature_length) > $sig_limits[1])
{
$_POST['signature'] = trim(htmlspecialchars($smcFunc['substr']($unparsed_signature_length, 0, $sig_limits[1]), ENT_QUOTES));

--- End code ---

I'm wondering if it is worth.

Opinions?

Navigation

[0] Message Index

[#] Next page

Go to full version