[Groonga-commit] groonga/grnxx at d23b9a1 [new_data_types] Check the validity of a row ID in Column<Bool>::set().

Back to archive index

susumu.yata null+****@clear*****
Thu Nov 6 19:05:20 JST 2014


susumu.yata	2014-11-06 19:05:20 +0900 (Thu, 06 Nov 2014)

  New Revision: d23b9a1710ab7902d8ee412a5ac83f0a96198342
  https://github.com/groonga/grnxx/commit/d23b9a1710ab7902d8ee412a5ac83f0a96198342

  Message:
    Check the validity of a row ID in Column<Bool>::set().

  Modified files:
    lib/grnxx/impl/column/scalar/bool.cpp

  Modified: lib/grnxx/impl/column/scalar/bool.cpp (+5 -0)
===================================================================
--- lib/grnxx/impl/column/scalar/bool.cpp    2014-11-06 18:11:51 +0900 (ca15746)
+++ lib/grnxx/impl/column/scalar/bool.cpp    2014-11-06 19:05:20 +0900 (8b3c6f0)
@@ -1,5 +1,7 @@
 #include "grnxx/impl/column/scalar/bool.hpp"
 
+#include "grnxx/impl/table.hpp"
+
 namespace grnxx {
 namespace impl {
 
@@ -13,6 +15,9 @@ Column<Bool>::~Column() {}
 
 void Column<Bool>::set(Int row_id, const Datum &datum) {
   Bool value = parse_datum(datum);
+  if (!table_->test_row(row_id)) {
+    throw "Invalid row ID";  // TODO
+  }
   size_t value_id = row_id.value();
   if (value_id >= values_.size()) {
     values_.resize(value_id + 1, Bool::na());
-------------- next part --------------
HTML����������������������������...
下載 



More information about the Groonga-commit mailing list
Back to archive index