Subject: Re: bug#9910: valgrind warning in coding.c:coding_set_destination
From: Dan Nicolaescu <[email-masked]>
To: Kenichi Handa <[email-masked]>
Cc: [email-masked], [email-masked], [email-masked]
Date: Sun, 06 Nov 2011 23:28:38 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

Kenichi Handa <[email-masked]> writes:

> In article <[email-masked]>, Dan Nicolaescu <[email-masked]> writes:
>
>> valgrind ./temacs 
>
>> produces this warning:
>
>> ==30382== Conditional jump or move depends on uninitialised value(s)
>> ==30382==    at 0x499251: coding_set_destination (coding.c:1046)
>> ==30382==    by 0x4B477A: decode_coding (coding.c:7022)
>> ==30382==    by 0x4B7317: decode_coding_object (coding.c:7671)
>> ==30382==    by 0x63610F: Fcall_process (callproc.c:813)
>> ==30382==    by 0x5D6C07: Ffuncall (eval.c:2956)
>> ==30382==    by 0x5D5ECA: Fapply (eval.c:2479)
>> ==30382==    by 0x5D6C07: Ffuncall (eval.c:2956)
>> ==30382==    by 0x622C5B: exec_byte_code (bytecode.c:785)
>> ==30382==    by 0x5D77BA: funcall_lambda (eval.c:3205)
>> ==30382==    by 0x5D6F4C: Ffuncall (eval.c:3023)
>> ==30382==    by 0x622C5B: exec_byte_code (bytecode.c:785)
>> ==30382==    by 0x5D77BA: funcall_lambda (eval.c:3205)
>  
>>  This looks like setup_coding_system (or whatever else initializes struct
>>  coding_system) does not initialize the src_pos field.
>
> I fixed it.  But as "valgrind ./temacs" segfaults in my
> environment, I can't confirm the fix.  Please check if the
> fix is correct or not.

Thank you very much!
The fix looks good, the warning does not appear anymore.

valgrind ./temacs also segfaults for me in 32 bit mode (i686), it works
in 64 bit mode (x86_64).