Certain characters in fixture descriptions can cause fixture to be deleted on server restart/unsanitized DB input.

Bugs relating to the Classes, Spells and General Mechanics of Arelith.


Moderators: Active Admins, Forum Moderators, Active DMs, Contributors

Post Reply
Gerhazo
Posts: 63
Joined: Wed Jun 28, 2023 3:13 pm

Certain characters in fixture descriptions can cause fixture to be deleted on server restart/unsanitized DB input.

Post by Gerhazo »

Am not sure what causes this, but the presence of certain sequences of characters in a description seems to delete fixtures on a server restart.

In general, sometimes server restarts remove certain characters from descriptions, this likely doesn't matter for most use cases, other than occasionally jumbling ASCII art and things of the sort.

To test how various sequences of characters behave in that scenario, I edited a fixture's description to test certain characters, to come back to it having disappeared.

I repeated the test, but also setting an item's description to the same thing, to verify.

My findings: an item and fixture were set to the same description below. The fixture disappeared/got deleted, but the item with the same description did not.

Image

The item was saved in persistent storage, a quarters chest.

Am curious why this occurs and whether it's something that can be resolved or an odd technical limitation.

Last edited by Gerhazo on Mon Aug 26, 2024 5:38 pm, edited 1 time in total.
Aeryeris
Posts: 110
Joined: Sun Sep 19, 2021 3:38 pm

Re: Certain characters in fixture descriptions can cause fixture to be deleted on server restart.

Post by Aeryeris »

Sounds similar to this:

viewtopic.php?f=12&t=43003&p=325116#p325116

Tldr to cover the now missing screenshots:

  • Certain characters in the description cause the fixture to fail saving to the database.
  • The fixture limit won't be increased when placing down the fixture.

Shelved: Ginny Rivorndir
Currently playing: Lucretia Valène

Gerhazo
Posts: 63
Joined: Wed Jun 28, 2023 3:13 pm

Re: Certain characters in fixture descriptions can cause fixture to be deleted on server restart.

Post by Gerhazo »

Aeryeris wrote: Mon Aug 26, 2024 12:13 pm

Sounds similar to this:

viewtopic.php?f=12&t=43003&p=325116#p325116

Tldr to cover the now missing screenshots:

  • Certain characters in the description cause the fixture to fail saving to the database.
  • The fixture limit won't be increased when placing down the fixture.

That seems related to this. I also didn't notice/realise the fixture limit thing, that's helpful.

Gerhazo
Posts: 63
Joined: Wed Jun 28, 2023 3:13 pm

Re: Certain characters in fixture descriptions can cause fixture to be deleted on server restart.

Post by Gerhazo »

Further testing:
As was mentioned, -area can be used to determine whether the fixture was truly saved.

\ doesn't save properly
\\ does
\\\ doesn't
\\\\ does, again

It seems highly likely that the input sent to the database isn't sanitized and these are being treated as special characters.

User avatar
MissEvelyn
Arelith Silver Supporter
Arelith Silver Supporter
Posts: 1638
Joined: Sun Jul 12, 2015 8:43 pm

Re: Certain characters in fixture descriptions can cause fixture to be deleted on server restart/unsanitized DB input.

Post by MissEvelyn »

Isn't \ an "escape" character in code speak?

MRFTW wrote: Fri Oct 11, 2024 3:39 pm
Peacewhisper wrote: Thu Oct 10, 2024 1:26 pm

I don't talk to anyone OOC

This is actual RPR 50 behaviour.

Darkstorn42
Arelith Supporter
Arelith Supporter
Posts: 295
Joined: Fri Jan 03, 2020 4:27 pm

Re: Certain characters in fixture descriptions can cause fixture to be deleted on server restart/unsanitized DB input.

Post by Darkstorn42 »

This is something I ran into trying to create ascii art IG. The '\' is an escape, as MissEvelyn points out. That means, it tells the regular expression (regex) to ignore the next special character typed and treat it as a string. So that means it goes away. So therefore in \\, the first slash is an escape that treats the next slash as a slash and not as an escape.

Play around with this on discord to help understand. Something like bold \*text* and italic \**text**.

"Expecting infinite growth in a world with finite resources is the definition of insanity."
-Someone Somewhere

Post Reply