Skip to content

Commit 9af65e2

Browse files
authored
core: fix crash when running dry test mode (#8872)
The tls variable for out_flush_params is not initialized as the flb_start function is not called during the dry run. Call flb_init directly and then shutdown the engine. configuration test is successful ================================================================= ==63633==ERROR: AddressSanitizer: attempting free on address which was not malloc()-ed: 0x0001f71b3ac0 in thread T0 #0 0x103c9f260 in wrap_free+0x98 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x53260) #1 0x100179d9c in flb_free flb_mem.h:127 #2 0x10017f4a0 in flb_output_exit flb_output.c:481 #3 0x1001cb038 in flb_engine_shutdown flb_engine.c:1119 #4 0x10010d45c in flb_destroy flb_lib.c:240 #5 0x100008c40 in flb_main fluent-bit.c:1348 #6 0x10000c644 in main fluent-bit.c:1456 #7 0x18f11e0dc (<unknown module>) frame #6: 0x000000010017f4a4 fluent-bit`flb_output_exit(config=0x0000000102b00200) at flb_output.c:481:9 478 479 params = FLB_TLS_GET(out_flush_params); 480 if (params) { -> 481 flb_free(params); 482 } 483 } Signed-off-by: Holger Hans Peter Freyther <[email protected]>
1 parent 69b7f26 commit 9af65e2

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

src/fluent-bit.c

+1
Original file line numberDiff line numberDiff line change
@@ -1344,6 +1344,7 @@ int flb_main(int argc, char **argv)
13441344

13451345
if (config->dry_run == FLB_TRUE) {
13461346
fprintf(stderr, "configuration test is successful\n");
1347+
flb_init_env();
13471348
flb_cf_destroy(cf_opts);
13481349
flb_destroy(ctx);
13491350
exit(EXIT_SUCCESS);

0 commit comments

Comments
 (0)