From 11d78e8221d7c8f9347520252afea7b640e908db Mon Sep 17 00:00:00 2001 From: Debao Zhang Date: Fri, 3 Jan 2014 17:04:59 +0800 Subject: [PATCH] Issue 17: Don't used int limit any more Using two normal integer is enough. As the value of col_num between 1 and XLSX_COLUMN_MAX. --- src/xlsx/xlsxworksheet.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/xlsx/xlsxworksheet.cpp b/src/xlsx/xlsxworksheet.cpp index 66edf1e..408a9c5 100755 --- a/src/xlsx/xlsxworksheet.cpp +++ b/src/xlsx/xlsxworksheet.cpp @@ -48,7 +48,6 @@ #include #include -#include #include QT_BEGIN_NAMESPACE_XLSX @@ -87,20 +86,20 @@ WorksheetPrivate::~WorksheetPrivate() void WorksheetPrivate::calculateSpans() { row_spans.clear(); - int span_min = std::numeric_limits::max(); - int span_max = std::numeric_limits::min(); + int span_min = XLSX_COLUMN_MAX+1; + int span_max = -1; for (int row_num = dimension.firstRow(); row_num <= dimension.lastRow(); row_num++) { if (cellTable.contains(row_num)) { for (int col_num = dimension.firstColumn(); col_num <= dimension.lastColumn(); col_num++) { if (cellTable[row_num].contains(col_num)) { - if (span_max == std::numeric_limits::min()) { + if (span_max == -1) { span_min = col_num; span_max = col_num; } else { if (col_num < span_min) span_min = col_num; - if (col_num > span_max) + else if (col_num > span_max) span_max = col_num; } } @@ -109,13 +108,13 @@ void WorksheetPrivate::calculateSpans() if (comments.contains(row_num)) { for (int col_num = dimension.firstColumn(); col_num <= dimension.lastColumn(); col_num++) { if (comments[row_num].contains(col_num)) { - if (span_max == std::numeric_limits::min()) { + if (span_max == -1) { span_min = col_num; span_max = col_num; } else { if (col_num < span_min) span_min = col_num; - if (col_num > span_max) + else if (col_num > span_max) span_max = col_num; } } @@ -123,10 +122,10 @@ void WorksheetPrivate::calculateSpans() } if (row_num%16 == 0 || row_num == dimension.lastRow()) { - if (span_max != std::numeric_limits::min()) { + if (span_max != -1) { row_spans[row_num / 16] = QStringLiteral("%1:%2").arg(span_min).arg(span_max); - span_min = std::numeric_limits::max(); - span_max = std::numeric_limits::min(); + span_min = XLSX_COLUMN_MAX+1; + span_max = -1; } } }