[Groonga-commit] groonga/groonga at dac5dec [master] httpd: fix a bug that load JSON data is ignored

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Sep 6 17:04:06 JST 2016


Kouhei Sutou	2016-09-06 17:04:06 +0900 (Tue, 06 Sep 2016)

  New Revision: dac5dec6c481fea05a808b4198874c20514cd0f9
  https://github.com/groonga/groonga/commit/dac5dec6c481fea05a808b4198874c20514cd0f9

  Message:
    httpd: fix a bug that load JSON data is ignored

  Modified files:
    src/httpd/nginx-module/ngx_http_groonga_module.c

  Modified: src/httpd/nginx-module/ngx_http_groonga_module.c (+14 -6)
===================================================================
--- src/httpd/nginx-module/ngx_http_groonga_module.c    2016-09-06 16:13:44 +0900 (eae2550)
+++ src/httpd/nginx-module/ngx_http_groonga_module.c    2016-09-06 17:04:06 +0900 (7942232)
@@ -691,15 +691,15 @@ ngx_http_groonga_handler_create_data(ngx_http_request_t *r,
 static void
 ngx_http_groonga_handler_process_command_path(ngx_http_request_t *r,
                                               ngx_str_t *command_path,
-                                              ngx_http_groonga_handler_data_t *data)
+                                              ngx_http_groonga_handler_data_t *data,
+                                              int flags)
 {
   grn_obj uri;
 
   GRN_TEXT_INIT(&uri, 0);
   GRN_TEXT_PUTS(context, &uri, "/d/");
   GRN_TEXT_PUT(context, &uri, command_path->data, command_path->len);
-  grn_ctx_send(context, GRN_TEXT_VALUE(&uri), GRN_TEXT_LEN(&uri),
-               GRN_CTX_TAIL);
+  grn_ctx_send(context, GRN_TEXT_VALUE(&uri), GRN_TEXT_LEN(&uri), flags);
   data->rc = context->rc;
   ngx_http_groonga_context_log_error(r->connection->log);
   GRN_OBJ_FIN(context, &uri);
@@ -807,7 +807,9 @@ ngx_http_groonga_send_body(ngx_http_request_t *r,
           }
 
           line_length = line_current - line_start + 1;
-          if (!chain->next && rest_buffer_size == 0) {
+          if (line_current + 1 == line_end &&
+              !chain->next &&
+              rest_buffer_size == 0) {
             flags |= GRN_CTX_TAIL;
           }
           grn_ctx_send(context, line_start, line_length, flags);
@@ -882,7 +884,10 @@ ngx_http_groonga_handler_process_load(ngx_http_request_t *r,
     return;
   }
 
-  ngx_http_groonga_handler_process_command_path(r, command_path, data);
+  ngx_http_groonga_handler_process_command_path(r,
+                                                command_path,
+                                                data,
+                                                GRN_NO_FLAGS);
   if (data->rc != GRN_SUCCESS) {
     return;
   }
@@ -997,7 +1002,10 @@ ngx_http_groonga_handler_get(ngx_http_request_t *r)
     return rc;
   }
 
-  ngx_http_groonga_handler_process_command_path(r, &command_path, data);
+  ngx_http_groonga_handler_process_command_path(r,
+                                                &command_path,
+                                                data,
+                                                GRN_CTX_TAIL);
 
   /* discard request body, since we don't need it here */
   rc = ngx_http_discard_request_body(r);
-------------- next part --------------
HTML����������������������������...
Download 



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