Bugzilla – Bug 15561
Very long words in text labels can cause squeezeplay to crash
Last modified: 2011-03-16 04:45:51 UTC
Rendering very long text strings fails if the resultant image is wider than the max width of an SDL surface (16k pixels). This results in a null SDL surface being returned and can lead to jive_surface_get_size being called with no sdl surface. This means the label text is not shown and could trigger a crash in jive_surface_get_size depending on where it is called from. svn 8427 fixed the crash case I am seeing - this should be considered for 7.4.x Will add some debugging code and propose a patch to the underlying problem.
== Auto-comment from SVN commit #8428 to the jive repo by adrian == == https://svn.slimdevices.com/jive?view=revision&revision=8428 == Bug: 15561 Description: logging to understand reason for labels not being displayed and returning a null surface here (most likely cause is that they result in an SDL surface width > 16k pixels)
Created attachment 6475 [details] potential patch - split really long words onto multiple lines Attached is a potential patch which will make the problem strings display. I think this is a good step to resolve this bug, but looking for feedback first. (previous commits have resolved crash condition)
== Auto-comment from SVN commit #8429 to the jive repo by adrian == == https://svn.slimdevices.com/jive?view=revision&revision=8429 == Bug: 15561 Description: don't display the problem string in the logging message
Ben to review this patch
Patch looks fine to my eyes, but please consider that my eyes don't read C code at all. I get what's trying to be accomplished though and it looks fine and low risk.
Shall I take that as a prompt to commit it? I don't see it causing any harm other than causing very long text to wrap.
Is the 7.4.2 build finalised? I think we should be considering checkin 8427 for it as it avoids a crash case.
== Auto-comment from SVN commit #8500 to the repo by adrian == == https://svn.slimdevices.com/?view=revision&revision=8500 == Bug: 15561 Description: split very long words onto multiple lines in labels as otherwise they break the max width of an SDL surface
This bug has been marked fixed in a released version of Squeezebox Server or the accompanying firmware or mysqueezebox.com release. If you are still seeing this issue, please let us know!