folgenden bug habe ich beim portieren auf die dreambox gefunden, er führt zum segfault, wenn die Zeilen länger als 35 Zeichen sind. Auf der dreambox:
Code: Alles auswählen
~ > cat /proc/bus/bitstream
Bitstream Settings:
H_SIZE: 720
V_SIZE: 576
A_RATIO: 3
F_RATE: 3
VIDEO_BUF_SIZE: 0 bytes (+~80 for fifo)
AUDIO_BUF: 00000000
Code: Alles auswählen
Index: apps/tuxbox/neutrino/src/gui/streaminfo2.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/streaminfo2.cpp,v
retrieving revision 1.24
diff -u -p -r1.24 streaminfo2.cpp
--- a/apps/tuxbox/neutrino/src/gui/streaminfo2.cpp 26 May 2007 15:05:55 -0000 1.24
+++ b/apps/tuxbox/neutrino/src/gui/streaminfo2.cpp 9 Jun 2007 14:53:38 -0000
@@ -454,7 +454,7 @@ void CStreamInfo2::paint_techinfo(int xp
fgets(buf,35,fd);//dummy
while(!feof(fd))
{
- if(fgets(buf,35,fd)!=NULL)
+ if(fgets(buf,99,fd)!=NULL)
{
buf[strlen(buf)-1]=0;
tmpptr=buf;
@@ -511,7 +511,8 @@ void CStreamInfo2::paint_techinfo(int xp
- if (!bitInfo[7]) strncpy(buf, g_Locale->getText(LOCALE_STREAMINFO_AUDIOTYPE_UNKNOWN), sizeof(buf));
+ if (!bitInfo[7])
+ strncpy(buf, g_Locale->getText(LOCALE_STREAMINFO_AUDIOTYPE_UNKNOWN), sizeof(buf));
else {
const char* layernames[4] ={"res", "III", "II", "I"};
const char* sampfreqnames[4] ={"44,1k", "48k", "32k", "res"};