diff options
Diffstat (limited to 'src/daemon/main.c')
-rw-r--r-- | src/daemon/main.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/daemon/main.c b/src/daemon/main.c index 9bea2aee..0e7b54a5 100644 --- a/src/daemon/main.c +++ b/src/daemon/main.c @@ -934,11 +934,6 @@ int main(int argc, char *argv[]) { pa_memtrap_install(); - if (!getenv("PULSE_NO_SIMD")) { - pa_cpu_init_x86(); - pa_cpu_init_arm(); - } - pa_assert_se(mainloop = pa_mainloop_new()); if (!(c = pa_core_new(pa_mainloop_get_api(mainloop), !conf->disable_shm, conf->shm_size))) { @@ -964,6 +959,14 @@ int main(int argc, char *argv[]) { c->server_type = conf->local_server_type; #endif + c->cpu_info.cpu_type = PA_CPU_UNDEFINED; + if (!getenv("PULSE_NO_SIMD")) { + if (pa_cpu_init_x86(&(c->cpu_info.flags.x86))) + c->cpu_info.cpu_type = PA_CPU_X86; + if (pa_cpu_init_arm(&(c->cpu_info.flags.arm))) + c->cpu_info.cpu_type = PA_CPU_ARM; + } + pa_assert_se(pa_signal_init(pa_mainloop_get_api(mainloop)) == 0); pa_signal_new(SIGINT, signal_callback, c); pa_signal_new(SIGTERM, signal_callback, c); |