Kouhei Sutou 2019-05-10 19:11:29 +0900 (Fri, 10 May 2019) Revision: 6ebe0eb50bdc13e3e7e5c54976fb54ff076da30a https://github.com/groonga/groonga/commit/6ebe0eb50bdc13e3e7e5c54976fb54ff076da30a Message: grn_text_vprintf windows: add missing print error case Modified files: lib/str.c Modified: lib/str.c (+2 -2) =================================================================== --- lib/str.c 2019-05-10 18:52:20 +0900 (2d3f11e6d) +++ lib/str.c 2019-05-10 19:11:29 +0900 (377d3ce3b) @@ -2597,7 +2597,7 @@ grn_text_vprintf(grn_ctx *ctx, grn_obj *bulk, const char *format, va_list args) written_size = vsnprintf(GRN_BULK_CURR(bulk), rest_size, format, copied_args); va_end(copied_args); - is_written = (written_size + 1 <= rest_size); + is_written = (written_size >= 0 && (written_size + 1 <= rest_size)); } if (!is_written) { @@ -2624,7 +2624,7 @@ grn_text_vprintf(grn_ctx *ctx, grn_obj *bulk, const char *format, va_list args) va_copy(copied_args, args); written_size = vsnprintf(GRN_BULK_CURR(bulk), rest_size, format, copied_args); va_end(copied_args); - const bool is_written = (written_size + 1 <= rest_size); + const bool is_written = (written_size >= 0 && (written_size + 1 <= rest_size)); if (!is_written) { const int required_size = written_size + 1; /* "+ 1" for terminate '\0'. */ const grn_rc rc = grn_bulk_reserve(ctx, bulk, required_size); -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190510/8e8ce274/attachment-0001.html>