commit 7d163d4e78e9878b42a36018862a25b211c1a41a
Author: Jean-Marc Lasgouttes <[email protected]>
Date:   Mon Feb 29 13:06:23 2016 +0100

    Better handling of different int sizes when computing row crc

diff --git a/src/ParagraphMetrics.cpp b/src/ParagraphMetrics.cpp
index ad217cf..5a15158 100644
--- a/src/ParagraphMetrics.cpp
+++ b/src/ParagraphMetrics.cpp
@@ -100,13 +100,14 @@ size_t ParagraphMetrics::computeRowSignature(Row const & 
row,
                }
        }
 
+       pos_type const b1[] = { row.sel_beg, row.sel_end };
+       crc.process_bytes(b1, sizeof(b1));
+
        Dimension const & d = row.dimension();
-       char_type const b[] = { static_cast<char_type>(row.sel_beg),
-                               static_cast<char_type>(row.sel_end),
-                               row.begin_margin_sel,
-                               row.end_margin_sel,
-                               d.wid, d.asc, d.des };
-       crc.process_bytes(b, sizeof(b));
+       char_type const b2[] = { row.begin_margin_sel,
+                                row.end_margin_sel,
+                                d.wid, d.asc, d.des };
+       crc.process_bytes(b2, sizeof(b2));
        crc.process_bytes(&row.separator, sizeof(row.separator));
 
        return crc.checksum();

Reply via email to