come on...
(I'm not sure what would be more polite, to answer that I have no time or not to answer anything. And: I did not compile the code with the suggested change... I used a workaround, that is, edited the .reg file by hands so that the original code accepts it)
there's a fgets in the beginning... you'll need an extra variable...
Finally, I'm a user, and it's a bug report, not a fix.
--- Comment #2 from Dmitry Timoshkov dmitry@codeweavers.com 2007-12-03 23:41:07 ---
(In reply to comment #0)
http://source.winehq.org/source/programs/regedit/regproc.c reads (line 570):
570 if ((c = fgetc (in)) == EOF || c != ' ' ||
571 (c = fgetc (in)) == EOF || c != ' ')
572 fprintf(stderr,"%s: ERROR - invalid continuation.\n",
573 getAppName());
It should be:
do { c=fgetc(in); } while(c==' '||c=='\t');
if(c==EOF){fprintf(stderr,"%s: ERROR - invalid continuation.\n",
getAppName());}
ungetc(c,in);
It should be pretty easy to rewrite the fix to avoid the ungetc() at the end,
and use the same whitespace formatting rules as the existing code does.