mirror of
https://github.com/switchbrew/libnx.git
synced 2025-07-03 18:12:14 +02:00
Style fixes
This commit is contained in:
parent
f1ad24b7cc
commit
7cf656f025
@ -11,10 +11,10 @@
|
|||||||
|
|
||||||
/// LmLogDestination
|
/// LmLogDestination
|
||||||
typedef enum {
|
typedef enum {
|
||||||
LmLogDestination_TMA = BIT(0), ///< Logs to TMA.
|
LmLogDestination_TMA = BIT(0), ///< Logs to TMA.
|
||||||
LmLogDestination_UART = BIT(1), ///< Logs to UART.
|
LmLogDestination_UART = BIT(1), ///< Logs to UART.
|
||||||
LmLogDestination_UARTSleeping = BIT(2), ///< Logs to UART (when sleeping).
|
LmLogDestination_UARTSleeping = BIT(2), ///< Logs to UART (when sleeping).
|
||||||
LmLogDestination_All = 0xFFFF, ///< Logs to all locations.
|
LmLogDestination_All = 0xFFFF, ///< Logs to all locations.
|
||||||
} LmLogDestination;
|
} LmLogDestination;
|
||||||
|
|
||||||
/// Initialize lm. This is stubbed on retail LogManager, always succeeding. This service is automatically initialized and exited by diag.
|
/// Initialize lm. This is stubbed on retail LogManager, always succeeding. This service is automatically initialized and exited by diag.
|
||||||
|
@ -148,12 +148,12 @@ NX_INLINE DiagLogPacket *diagAllocateLogPackets(const size_t msg_len, size_t *ou
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Always send at least 2 packets, a head and a tail.
|
// Always send at least 2 packets, a head and a tail.
|
||||||
if(packet_count < 2) {
|
if (packet_count < 2) {
|
||||||
packet_count = 2;
|
packet_count = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
DiagLogPacket *packets = (DiagLogPacket*)calloc(packet_count, sizeof(DiagLogPacket));
|
DiagLogPacket *packets = (DiagLogPacket*)calloc(packet_count, sizeof(DiagLogPacket));
|
||||||
if(packets == NULL) {
|
if (packets == NULL) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
*out_packet_count = packet_count;
|
*out_packet_count = packet_count;
|
||||||
@ -171,7 +171,7 @@ NX_CONSTEXPR bool diagIsChunkTypeEmpty(const DiagLogDataChunkTypeHeader *chunk_h
|
|||||||
}
|
}
|
||||||
|
|
||||||
NX_CONSTEXPR size_t diagComputeChunkKeySize(const DiagLogDataChunkTypeHeader *chunk_header) {
|
NX_CONSTEXPR size_t diagComputeChunkKeySize(const DiagLogDataChunkTypeHeader *chunk_header) {
|
||||||
if(diagIsChunkTypeEmpty(chunk_header)) {
|
if (diagIsChunkTypeEmpty(chunk_header)) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
return sizeof(DiagLogDataChunkTypeHeader) + chunk_header->chunk_len;
|
return sizeof(DiagLogDataChunkTypeHeader) + chunk_header->chunk_len;
|
||||||
@ -194,7 +194,7 @@ NX_CONSTEXPR size_t diagComputeLogPacketPayloadSize(const DiagLogPacket *packet)
|
|||||||
// Log payload encoding helpers
|
// Log payload encoding helpers
|
||||||
|
|
||||||
NX_CONSTEXPR u8 *diagLogPayloadEncode(u8 *payload_buf, const void *data, size_t size) {
|
NX_CONSTEXPR u8 *diagLogPayloadEncode(u8 *payload_buf, const void *data, size_t size) {
|
||||||
if(size > 0) {
|
if (size > 0) {
|
||||||
__builtin_memcpy(payload_buf, data, size);
|
__builtin_memcpy(payload_buf, data, size);
|
||||||
return payload_buf + size;
|
return payload_buf + size;
|
||||||
}
|
}
|
||||||
@ -202,7 +202,7 @@ NX_CONSTEXPR u8 *diagLogPayloadEncode(u8 *payload_buf, const void *data, size_t
|
|||||||
}
|
}
|
||||||
|
|
||||||
NX_CONSTEXPR u8 *diagLogPayloadEncodeU8ChunkType(u8 *payload_buf, DiagU8ChunkType *chunk_type) {
|
NX_CONSTEXPR u8 *diagLogPayloadEncodeU8ChunkType(u8 *payload_buf, DiagU8ChunkType *chunk_type) {
|
||||||
if(diagIsChunkTypeEmpty(&chunk_type->header)) {
|
if (diagIsChunkTypeEmpty(&chunk_type->header)) {
|
||||||
return payload_buf;
|
return payload_buf;
|
||||||
}
|
}
|
||||||
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
||||||
@ -211,7 +211,7 @@ NX_CONSTEXPR u8 *diagLogPayloadEncodeU8ChunkType(u8 *payload_buf, DiagU8ChunkTyp
|
|||||||
}
|
}
|
||||||
|
|
||||||
NX_CONSTEXPR u8 *diagLogPayloadEncodeU32ChunkType(u8 *payload_buf, DiagU32ChunkType *chunk_type) {
|
NX_CONSTEXPR u8 *diagLogPayloadEncodeU32ChunkType(u8 *payload_buf, DiagU32ChunkType *chunk_type) {
|
||||||
if(diagIsChunkTypeEmpty(&chunk_type->header)) {
|
if (diagIsChunkTypeEmpty(&chunk_type->header)) {
|
||||||
return payload_buf;
|
return payload_buf;
|
||||||
}
|
}
|
||||||
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
||||||
@ -220,7 +220,7 @@ NX_CONSTEXPR u8 *diagLogPayloadEncodeU32ChunkType(u8 *payload_buf, DiagU32ChunkT
|
|||||||
}
|
}
|
||||||
|
|
||||||
NX_CONSTEXPR u8 *diagLogPayloadEncodeU64ChunkType(u8 *payload_buf, DiagU64ChunkType *chunk_type) {
|
NX_CONSTEXPR u8 *diagLogPayloadEncodeU64ChunkType(u8 *payload_buf, DiagU64ChunkType *chunk_type) {
|
||||||
if(diagIsChunkTypeEmpty(&chunk_type->header)) {
|
if (diagIsChunkTypeEmpty(&chunk_type->header)) {
|
||||||
return payload_buf;
|
return payload_buf;
|
||||||
}
|
}
|
||||||
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
||||||
@ -229,7 +229,7 @@ NX_CONSTEXPR u8 *diagLogPayloadEncodeU64ChunkType(u8 *payload_buf, DiagU64ChunkT
|
|||||||
}
|
}
|
||||||
|
|
||||||
NX_CONSTEXPR u8 *diagLogPayloadEncodeStringChunkType(u8 *payload_buf, DiagStringChunkType *chunk_type) {
|
NX_CONSTEXPR u8 *diagLogPayloadEncodeStringChunkType(u8 *payload_buf, DiagStringChunkType *chunk_type) {
|
||||||
if(diagIsChunkTypeEmpty(&chunk_type->header)) {
|
if (diagIsChunkTypeEmpty(&chunk_type->header)) {
|
||||||
return payload_buf;
|
return payload_buf;
|
||||||
}
|
}
|
||||||
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
u8 *buf = diagLogPayloadEncode(payload_buf, &chunk_type->header, sizeof(DiagLogDataChunkTypeHeader));
|
||||||
@ -240,15 +240,15 @@ NX_CONSTEXPR u8 *diagLogPayloadEncodeStringChunkType(u8 *payload_buf, DiagString
|
|||||||
void diagLogImpl(const DiagLogMetadata *metadata) {
|
void diagLogImpl(const DiagLogMetadata *metadata) {
|
||||||
mutexLock(&g_logMutex);
|
mutexLock(&g_logMutex);
|
||||||
Result rc = smInitialize();
|
Result rc = smInitialize();
|
||||||
if(R_SUCCEEDED(rc)) {
|
if (R_SUCCEEDED(rc)) {
|
||||||
rc = lmInitialize();
|
rc = lmInitialize();
|
||||||
smExit();
|
smExit();
|
||||||
}
|
}
|
||||||
if(R_SUCCEEDED(rc)) {
|
if (R_SUCCEEDED(rc)) {
|
||||||
size_t packet_count = 0;
|
size_t packet_count = 0;
|
||||||
const size_t text_log_len = __builtin_strlen(metadata->text_log);
|
const size_t text_log_len = __builtin_strlen(metadata->text_log);
|
||||||
DiagLogPacket *packets = diagAllocateLogPackets(text_log_len, &packet_count);
|
DiagLogPacket *packets = diagAllocateLogPackets(text_log_len, &packet_count);
|
||||||
if(packet_count > 0 && packets != NULL) {
|
if (packet_count > 0 && packets != NULL) {
|
||||||
DiagLogPacket *head_packet = &packets[0];
|
DiagLogPacket *head_packet = &packets[0];
|
||||||
head_packet->header.flags = DiagLogPacketFlags_Head;
|
head_packet->header.flags = DiagLogPacketFlags_Head;
|
||||||
DiagLogPacket *tail_packet = &packets[packet_count - 1];
|
DiagLogPacket *tail_packet = &packets[packet_count - 1];
|
||||||
@ -277,8 +277,7 @@ void diagLogImpl(const DiagLogMetadata *metadata) {
|
|||||||
remaining_len -= cur_len;
|
remaining_len -= cur_len;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t i;
|
for(size_t i = 0; i < packet_count; i++) {
|
||||||
for(i = 0; i < packet_count; i++) {
|
|
||||||
DiagLogPacket *cur_packet = &packets[i];
|
DiagLogPacket *cur_packet = &packets[i];
|
||||||
cur_packet->header.severity = (u8)metadata->severity;
|
cur_packet->header.severity = (u8)metadata->severity;
|
||||||
cur_packet->header.verbosity = (u8)metadata->verbosity;
|
cur_packet->header.verbosity = (u8)metadata->verbosity;
|
||||||
@ -287,48 +286,48 @@ void diagLogImpl(const DiagLogMetadata *metadata) {
|
|||||||
const size_t log_buf_size = cur_packet->header.payload_size + sizeof(DiagLogPacketHeader);
|
const size_t log_buf_size = cur_packet->header.payload_size + sizeof(DiagLogPacketHeader);
|
||||||
|
|
||||||
void *log_buf = calloc(1, log_buf_size);
|
void *log_buf = calloc(1, log_buf_size);
|
||||||
if(log_buf != NULL) {
|
if (log_buf != NULL) {
|
||||||
// Write the packet's header.
|
// Write the packet's header.
|
||||||
u8 *payload_buf = diagLogPayloadEncode((u8*)log_buf, &cur_packet->header, sizeof(DiagLogPacketHeader));
|
u8 *payload_buf = diagLogPayloadEncode((u8*)log_buf, &cur_packet->header, sizeof(DiagLogPacketHeader));
|
||||||
|
|
||||||
// Write non-empty packets to the payload.
|
// Write non-empty packets to the payload.
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.log_session_begin.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.log_session_begin.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeU8ChunkType(payload_buf, &cur_packet->payload.log_session_begin);
|
payload_buf = diagLogPayloadEncodeU8ChunkType(payload_buf, &cur_packet->payload.log_session_begin);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.log_session_end.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.log_session_end.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeU8ChunkType(payload_buf, &cur_packet->payload.log_session_end);
|
payload_buf = diagLogPayloadEncodeU8ChunkType(payload_buf, &cur_packet->payload.log_session_end);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.text_log.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.text_log.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.text_log);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.text_log);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.line_number.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.line_number.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeU32ChunkType(payload_buf, &cur_packet->payload.line_number);
|
payload_buf = diagLogPayloadEncodeU32ChunkType(payload_buf, &cur_packet->payload.line_number);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.file_name.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.file_name.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.file_name);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.file_name);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.function_name.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.function_name.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.function_name);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.function_name);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.module_name.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.module_name.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.module_name);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.module_name);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.thread_name.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.thread_name.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.thread_name);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.thread_name);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.log_packet_drop_count.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.log_packet_drop_count.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeU64ChunkType(payload_buf, &cur_packet->payload.log_packet_drop_count);
|
payload_buf = diagLogPayloadEncodeU64ChunkType(payload_buf, &cur_packet->payload.log_packet_drop_count);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.user_system_clock.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.user_system_clock.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeU64ChunkType(payload_buf, &cur_packet->payload.user_system_clock);
|
payload_buf = diagLogPayloadEncodeU64ChunkType(payload_buf, &cur_packet->payload.user_system_clock);
|
||||||
}
|
}
|
||||||
if(!diagIsChunkTypeEmpty(&cur_packet->payload.process_name.header)) {
|
if (!diagIsChunkTypeEmpty(&cur_packet->payload.process_name.header)) {
|
||||||
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.process_name);
|
payload_buf = diagLogPayloadEncodeStringChunkType(payload_buf, &cur_packet->payload.process_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
rc = lmLog(log_buf, log_buf_size);
|
rc = lmLog(log_buf, log_buf_size);
|
||||||
free(log_buf);
|
free(log_buf);
|
||||||
if(R_FAILED(rc)) {
|
if (R_FAILED(rc)) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ Result lmLog(const void *buf, size_t buf_size) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Result lmSetDestination(LmLogDestination destination) {
|
Result lmSetDestination(LmLogDestination destination) {
|
||||||
if(hosversionBefore(3,0,0))
|
if (hosversionBefore(3,0,0))
|
||||||
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
|
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
|
||||||
u32 in = (u32)destination;
|
u32 in = (u32)destination;
|
||||||
return serviceDispatchIn(&g_lmLoggerSrv, 1, in);
|
return serviceDispatchIn(&g_lmLoggerSrv, 1, in);
|
||||||
|
Loading…
Reference in New Issue
Block a user