> ==17454== Conditional jump or move depends on uninitialised value(s) > ==17454== at 0x5921F10: strchrnul (in /lib/libc-2.11.3.so) > ==17454== by 0x58E55D6: vfprintf (in /lib/libc-2.11.3.so)
> the involved fuctions are shown below; the statement in question (see below) > is > > sprintf (select_anw, sel_anw, name, name); <********* sisisinst.c:1397 > > I have checked carefully the code and the 4 args to sprintf() are > all correct defined on the stack; when I change the code to: > > > select_anw[0] = '\0'; > sprintf (select_anw, sel_anw, name, name); > > then is valgrind happy, i.e, does not raise the messages any more; You say that all 4 args are on the stack. What are their actual addresses? Run with --db-attach=yes, say 'y' when asked, and use gdb to look around. One possibility is that sel_anw (the format string) has been overwritten because the string being built into select_anw (the buffer) has overflowed. Try changing the code to use snprintf(select_anw, LEN_SELECT, sel_anw, name, name); which is much safer. ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users