From cd0ab951cfa08e8c4e43716cf65d612be02e9545 Mon Sep 17 00:00:00 2001 From: A-lex-Ra Date: Wed, 31 Jan 2024 09:57:26 +0600 Subject: [PATCH] minor refact --- src/audio/audioutil.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/audio/audioutil.cpp b/src/audio/audioutil.cpp index fcb6b773..17e3d99c 100644 --- a/src/audio/audioutil.cpp +++ b/src/audio/audioutil.cpp @@ -15,21 +15,23 @@ #endif bool is_big_endian(void){ - union { - uint32_t i; - char c[4]; - } bint = {0x01020304}; + uint32_t ui32_v = 0x01020304; + char bytes[sizeof(uint32_t)]; + std::memcpy(bytes, &ui32_v, sizeof(uint32_t)); - return bint.c[0] == 1; + return bytes[0] == 1; } std::int32_t convert_to_int(char* buffer, std::size_t len){ std::int32_t a = 0; - if(!is_big_endian()) + if (!is_big_endian()) { std::memcpy(&a, buffer, len); - else - for(std::size_t i = 0; i < len; ++i) + } + else { + for (std::size_t i = 0; i < len; ++i) { reinterpret_cast(&a)[3 - i] = buffer[i]; + } + } return a; }