Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/zabbix/zabbix.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorArmands Arseniuss Skolmeisters <armands.skolmeisters@zabbix.com>2022-11-02 12:01:36 +0300
committerArmands Arseniuss Skolmeisters <armands.skolmeisters@zabbix.com>2022-11-02 12:01:36 +0300
commit031281849d6c22e0a70ad4be1c3c96b1482c34dd (patch)
treeba5bbd3eb6c18e974f27856777c735de7244438a /src
parent1e7e3f33598e4febd2090dbb63bce6cb02c4d1ff (diff)
...G...... [DEV-2302] refactored minor adjustments in zbxwin32 library
Diffstat (limited to 'src')
-rw-r--r--src/libs/zbxwin32/fatal.c11
-rw-r--r--src/zabbix_agent/zabbix_agentd.c11
2 files changed, 14 insertions, 8 deletions
diff --git a/src/libs/zbxwin32/fatal.c b/src/libs/zbxwin32/fatal.c
index d2750170f5e..7c684fb9615 100644
--- a/src/libs/zbxwin32/fatal.c
+++ b/src/libs/zbxwin32/fatal.c
@@ -30,14 +30,17 @@
typedef BOOL (WINAPI *SymGetLineFromAddrW64_func_t)(HANDLE, DWORD64, PDWORD, PIMAGEHLP_LINE64);
typedef BOOL (WINAPI *SymFromAddr_func_t)(HANDLE a, DWORD64 b , PDWORD64 c, PSYMBOL_INFO d);
+#ifdef _M_X64
static void print_register(const char *name, unsigned __int64 value)
{
-#ifdef _M_X64
zabbix_log(LOG_LEVEL_CRIT, "%-7s = %16I64x = %20I64u = %20I64d", name, value, value, value);
+}
#else
+static void print_register(const char *name, unsigned __int32 value)
+{
zabbix_log(LOG_LEVEL_CRIT, "%-7s = %16lx = %20lu = %20ld", name, value, value, value);
-#endif
}
+#endif
static void print_fatal_info(CONTEXT *pctx)
{
@@ -92,7 +95,7 @@ static void print_fatal_info(CONTEXT *pctx)
#undef ZBX_LSHIFT
}
-static zbx_get_progname_f get_progname_cb = NULL;
+static zbx_get_progname_f get_progname_cb = NULL;
void zbx_backtrace(void)
{
@@ -228,7 +231,7 @@ static void print_backtrace(CONTEXT *pctx)
zbx_free(pSym);
}
-void zbx_win_exception_init(zbx_get_progname_f get_progname)
+void zbx_init_library_win32(zbx_get_progname_f get_progname)
{
get_progname_cb = get_progname;
}
diff --git a/src/zabbix_agent/zabbix_agentd.c b/src/zabbix_agent/zabbix_agentd.c
index 16c4974bb84..8551c8a8136 100644
--- a/src/zabbix_agent/zabbix_agentd.c
+++ b/src/zabbix_agent/zabbix_agentd.c
@@ -243,10 +243,12 @@ static unsigned char get_program_type(void)
return program_type;
}
+#if defined(_WINDOWS) || defined(__MINGW32__)
static const char *get_progname(void)
{
return progname;
}
+#endif
static zbx_thread_activechk_args *config_active_args = NULL;
@@ -1344,7 +1346,11 @@ int main(int argc, char **argv)
char *error = NULL;
#ifdef _WINDOWS
int ret;
-
+#endif
+#if defined(_WINDOWS) || defined(__MINGW32__)
+ zbx_init_library_win32(&get_progname);
+#endif
+#ifdef _WINDOWS
/* Provide, so our process handles errors instead of the system itself. */
/* Attention!!! */
/* The system does not display the critical-error-handler message box. */
@@ -1361,9 +1367,6 @@ int main(int argc, char **argv)
exit(EXIT_FAILURE);
#if defined(_WINDOWS) || defined(__MINGW32__)
zbx_import_symbols();
- zbx_win_exception_init(&get_progname);
-#else
- ZBX_UNUSED(get_progname);
#endif
#ifdef _WINDOWS
if (ZBX_TASK_SHOW_USAGE != t.task && ZBX_TASK_SHOW_VERSION != t.task && ZBX_TASK_SHOW_HELP != t.task &&