Bugzilla – Bug 10332
Use of uninitialized value in sysread
Last modified: 2011-03-16 04:34:11 UTC
I installed SqueezeCenter 7.3 from the tarball for my Solaris system and I always run SC manually the first time to make sure there arent' any unexpected problems. With 7.3 whenever I play a track I get the error: [08-12-13 14:59:07.8478] Slim::Utils::Misc::msg (1126) Warning: [14:59:07.8466] Use of uninitialized value in sysread at /opt/squeezecenter-7.3/Slim/Player/Protocols/File.pm line 216. This occurs several times per second. Attached is my server.log with player.source=debug which is from when I started SC, played one short track, and let it continue into a second track then stopped playback. I have no issue with playback other than a whole lot of warning messages that didn't occur with 7.2.1. My system: Solaris 10 x86 Perl 5.8.8
Created attachment 4444 [details] server.log with warnings Server log that failed to attach to original submission.
Just to confirm, Jeff, this isn't causing an actual symptom?
(In reply to comment #2) > Just to confirm, Jeff, this isn't causing an actual symptom? > Other than filling my log file with a repetitive message, no. I need to figure out which logging option to turn off to slow the growth of my server.log. There has been one other instance of this issue that I have found in this forum thread: http://forums.slimdevices.com/showthread.php?t=55381 His problem seems to have solved itself, mine has not. It also looks like he is using Windows where I am running on Solaris from the source tarball.
Are you prepared and capable to try and debug which parameter it is complaining about? This has to be from the line: $n = sysread($self, $_[1], $n, $_[3]); I know that $_[3] will actually always be undefined but this should not cause an error. If any other parameter is undefined then I cannot see how it can work at all.
I may need a little bit of hand holding but I'm willing to try to debug this. Let me know how you'd like me to proceed.
Maybe it is complaining about $_[3] only on some versions of Perl? How about: $n = sysread($self, $_[1], $n, $_[3] || 0);
(In reply to comment #6) > Maybe it is complaining about $_[3] only on some versions of Perl? > > How about: > $n = sysread($self, $_[1], $n, $_[3] || 0); > Changed the line in my installation and set the player.source logging from off back to error and this error message has stopped. I restarted SC a couple of times to make sure as I sometimes had luck with the error message stopping but coming back with a vengeance after a restart. My Perl installation is 5.8.8 that I compiled myself using GCC 3.4.6.
After two days with the File.pm changed as Andy suggested I have no more entries in my server.log relating to this bug. As far as I'm concerned this bug has been squashed.
Great, fixed in change 24358.
(In reply to comment #8) > After two days with the File.pm changed as Andy suggested I have no more > entries in my server.log relating to this bug. > > As far as I'm concerned this bug has been squashed. > Marking bug as closed per comments above. Thanks for checking out the fix :)
Reduce number of active targets for SC