Francois Gouget : regedit: Fix the wrapping of binary values in export_hkey ().

Alexandre Julliard julliard at winehq.org
Wed Nov 12 07:19:03 CST 2008


Module: wine
Branch: master
Commit: e1901500ee5f90c72148f1d49125b64f1fdc26b7
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e1901500ee5f90c72148f1d49125b64f1fdc26b7

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Wed Nov 12 11:32:23 2008 +0100

regedit: Fix the wrapping of binary values in export_hkey().

Don't wait until the line overflows before wrapping it.
Don't wrap the last line.

---

 programs/regedit/regproc.c |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/programs/regedit/regproc.c b/programs/regedit/regproc.c
index d633d1d..2cfa092 100644
--- a/programs/regedit/regproc.c
+++ b/programs/regedit/regproc.c
@@ -1117,17 +1117,20 @@ static void export_hkey(FILE *file, HKEY key,
                     REGPROC_resize_char_buffer(line_buf, line_buf_size, line_len);
                     lstrcpyW(*line_buf + hex_pos, hex_prefix);
                     column = data_pos; /* no line wrap yet */
-                    for (i1 = 0; i1 < val_buf1_size; i1++) {
+                    i1 = 0;
+                    while (1)
+                    {
                         wsprintfW(*line_buf + data_pos, format, (unsigned int)(val_buf1)[i1]);
                         data_pos += 2;
-                        if (i1 + 1 < val_buf1_size) {
-                            lstrcpyW(*line_buf + data_pos, comma);
-                            data_pos++;
-                        }
+                        if (++i1 == val_buf1_size)
+                            break;
+
+                        lstrcpyW(*line_buf + data_pos, comma);
+                        data_pos++;
                         column += 3;
 
                         /* wrap the line */
-                        if (column > REG_FILE_HEX_LINE_LEN) {
+                        if (column >= REG_FILE_HEX_LINE_LEN) {
                             lstrcpyW(*line_buf + data_pos, concat);
                             data_pos += concat_len;
                             column = concat_prefix;




More information about the wine-cvs mailing list