[Groonga-commit] groonga/groonga at 16e74cc [master] Add NULL check

Back to archive index

Kouhei Sutou null+****@clear*****
Sun Oct 25 23:39:32 JST 2015


Kouhei Sutou	2015-10-25 23:39:32 +0900 (Sun, 25 Oct 2015)

  New Revision: 16e74cc808ccfbb95b4e5a7d5e6399d5e025fcfc
  https://github.com/groonga/groonga/commit/16e74cc808ccfbb95b4e5a7d5e6399d5e025fcfc

  Message:
    Add NULL check

  Modified files:
    include/groonga/obj.h

  Modified: include/groonga/obj.h (+27 -23)
===================================================================
--- include/groonga/obj.h    2015-10-25 23:37:35 +0900 (f22ba60)
+++ include/groonga/obj.h    2015-10-25 23:39:32 +0900 (9ed8f44)
@@ -25,19 +25,20 @@ extern "C" {
 
 #define GRN_OBJ_IS_TRUE(ctx, obj, result) do {  \
   grn_obj *obj_ = (obj);                        \
-  switch (obj_->header.type) {                  \
-  case GRN_BULK :                               \
-    switch (obj_->header.domain) {              \
-    case GRN_DB_BOOL :                          \
-      result = GRN_BOOL_VALUE(obj_);            \
-      break;                                    \
-    case GRN_DB_INT32 :                         \
-      result = GRN_INT32_VALUE(obj_) != 0;      \
-      break;                                    \
-    case GRN_DB_UINT32 :                        \
-      result = GRN_UINT32_VALUE(obj_) != 0;     \
-      break;                                    \
-    case GRN_DB_FLOAT :                         \
+  if (obj_) {                                   \
+    switch (obj_->header.type) {                \
+    case GRN_BULK :                             \
+      switch (obj_->header.domain) {            \
+      case GRN_DB_BOOL :                        \
+        result = GRN_BOOL_VALUE(obj_);          \
+        break;                                  \
+      case GRN_DB_INT32 :                       \
+        result = GRN_INT32_VALUE(obj_) != 0;    \
+        break;                                  \
+      case GRN_DB_UINT32 :                      \
+        result = GRN_UINT32_VALUE(obj_) != 0;   \
+        break;                                  \
+      case GRN_DB_FLOAT :                       \
       {                                         \
         double float_value;                     \
         float_value = GRN_FLOAT_VALUE(obj_);    \
@@ -45,22 +46,25 @@ extern "C" {
                   DBL_EPSILON < float_value);   \
       }                                         \
       break;                                    \
-    case GRN_DB_SHORT_TEXT :                    \
-    case GRN_DB_TEXT :                          \
-    case GRN_DB_LONG_TEXT :                     \
-      result = GRN_TEXT_LEN(obj_) != 0;         \
+      case GRN_DB_SHORT_TEXT :                  \
+      case GRN_DB_TEXT :                        \
+      case GRN_DB_LONG_TEXT :                   \
+        result = GRN_TEXT_LEN(obj_) != 0;       \
+        break;                                  \
+      default :                                 \
+        result = GRN_FALSE;                     \
+        break;                                  \
+      }                                         \
+      break;                                    \
+    case GRN_VECTOR :                           \
+      result = GRN_TRUE;                        \
       break;                                    \
     default :                                   \
       result = GRN_FALSE;                       \
       break;                                    \
     }                                           \
-    break;                                      \
-  case GRN_VECTOR :                             \
-    result = GRN_TRUE;                          \
-    break;                                      \
-  default :                                     \
+  } else {                                      \
     result = GRN_FALSE;                         \
-    break;                                      \
   }                                             \
 } while (0)
 
-------------- next part --------------
HTML����������������������������...
Download 



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