From: Corey Farrell Date: Sun, 24 Dec 2017 04:51:13 +0000 (-0500) Subject: loader: Add volatile to resource_being_loaded. X-Git-Tag: 13.20.0-rc1~141 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=92fb393cab7fbd164e299601e94909ba95a0116b;p=thirdparty%2Fasterisk.git loader: Add volatile to resource_being_loaded. Some compiler optimizers seem to assume that dlopen will not use __attribute__((constructor)) functions to call back to the program. This was causing resource_being_loaded to be optimized away completely. ASTERISK-27531 #close Tested By: abelbeck Change-Id: If17a3b889e06811a0e7119f0539d052494d6ece9 --- diff --git a/main/loader.c b/main/loader.c index c18fb379fc..b9baf3e933 100644 --- a/main/loader.c +++ b/main/loader.c @@ -202,7 +202,7 @@ static AST_DLLIST_HEAD_STATIC(reload_queue, reload_queue_item); * * This is protected by the module_list lock. */ -static struct ast_module *resource_being_loaded; +static struct ast_module * volatile resource_being_loaded; /*! * \internal