fix memoy leak of crc msg
still don't work with time
This commit is contained in:
parent
a0ce103a16
commit
f9b4ecb42c
19
mac_sender.c
19
mac_sender.c
@ -126,10 +126,12 @@ void MacSender(void *argument) {
|
||||
} else {
|
||||
// Checksum error, send original message again
|
||||
if(lastSentMsgPtr != NULL) {
|
||||
retCode = osMemoryPoolFree(memPool, queueMsg.anyPtr);
|
||||
CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE);
|
||||
//retCode = osMemoryPoolFree(memPool, queueMsg.anyPtr);
|
||||
//CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE);
|
||||
|
||||
memcpy(queueMsg.anyPtr, lastSentMsgPtr, sizeof(lastSentMsgPtr));
|
||||
queueMsg.type = TO_PHY;
|
||||
queueMsg.anyPtr = lastSentMsgPtr;
|
||||
//queueMsg.anyPtr = lastSentMsgPtr;
|
||||
retCode = osMessageQueuePut(
|
||||
queue_phyS_id,
|
||||
&queueMsg,
|
||||
@ -240,7 +242,7 @@ void MacSender(void *argument) {
|
||||
|
||||
msg = osMemoryPoolAlloc(memPool, 0); // TODO - Leak of memory
|
||||
if(msg == NULL) {
|
||||
printf("Memory allocation failed\r\n");
|
||||
printf("Memory allocation failed #1\r\n");
|
||||
assert(false);
|
||||
}
|
||||
msg[0] = src.raw;
|
||||
@ -254,8 +256,15 @@ void MacSender(void *argument) {
|
||||
CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE);
|
||||
|
||||
if(dst.addr != BROADCAST_ADDRESS) {
|
||||
lastSentMsgPtr = osMemoryPoolAlloc(memPool, osWaitForever);
|
||||
if(dst.sapi == CHAT_SAPI) {
|
||||
lastSentMsgPtr = osMemoryPoolAlloc(memPool, 0);
|
||||
if(lastSentMsgPtr == NULL) {
|
||||
printf("Memory allocation failed #2\r\n");
|
||||
assert(false);
|
||||
}
|
||||
memcpy(lastSentMsgPtr, msg, length+4);
|
||||
// TODO test if station is online
|
||||
}
|
||||
}
|
||||
|
||||
queueMsg.anyPtr = msg;
|
||||
|
14
main.h
14
main.h
@ -139,3 +139,17 @@ typedef union {
|
||||
};
|
||||
uint8_t raw;
|
||||
} Status;
|
||||
|
||||
typedef union {
|
||||
struct {
|
||||
bool_t nothing0: 1; // MSB
|
||||
bool_t chat: 1;
|
||||
bool_t nothing2: 1;
|
||||
bool_t time: 1;
|
||||
bool_t nothing4: 1;
|
||||
bool_t nothing5: 1;
|
||||
bool_t nothing6: 1;
|
||||
bool_t nothing7: 1; // LSB
|
||||
};
|
||||
uint8_t raw;
|
||||
} SapiToken;
|
||||
|
@ -120,7 +120,7 @@
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>EVENTREC_CNF</Key>
|
||||
<Name>-l2 -a1 -s0 -f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</Name>
|
||||
<Name>-l0 -a1 -s0 -f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
@ -145,7 +145,7 @@
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
<Key>ST-LINKIII-KEIL_SWO</Key>
|
||||
<Name>-U066DFF485153826687131237 -O8398 -SF10000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P2 -N00("ARM CoreSight SW-DP (ARM Core") -D00(5BA02477) -L00(0) -TO131075 -TC216000000 -TT216000000 -TP21 -TDS806B -TDT0 -TDC1F -TIE1 -TIP1 -FO7 -FD20010000 -FC1000 -FN1 -FF0STM32F7x_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F746NGHx$CMSIS\Flash\STM32F7x_1024.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2</Name>
|
||||
<Name>-U066DFF485153826687131237 -O8398 -SF1800 -C0 -A0 -I2 -HNlocalhost -HP7184 -P2 -N00("ARM CoreSight SW-DP (ARM Core") -D00(5BA02477) -L00(0) -TO131075 -TC216000000 -TT216000000 -TP21 -TDS806B -TDT0 -TDC1F -TIE1 -TIP1 -FO7 -FD20010000 -FC1000 -FN1 -FF0STM32F7x_1024.FLM -FS08000000 -FL0100000 -FP0($$Device:STM32F746NGHx$CMSIS\Flash\STM32F7x_1024.FLM) -WA0 -WE0 -WVCE4 -WS2710 -WM0 -WP2</Name>
|
||||
</SetRegEntry>
|
||||
<SetRegEntry>
|
||||
<Number>0</Number>
|
||||
@ -153,40 +153,7 @@
|
||||
<Name>UL2CM3(-S0 -C0 -P0 -FD20010000 -FC1000 -FN1 -FF0STM32F7x_1024 -FS08000000 -FL0100000 -FP0($$Device:STM32F746NGHx$CMSIS\Flash\STM32F7x_1024.FLM))</Name>
|
||||
</SetRegEntry>
|
||||
</TargetDriverDllRegistry>
|
||||
<Breakpoint>
|
||||
<Bp>
|
||||
<Number>0</Number>
|
||||
<Type>0</Type>
|
||||
<LineNumber>18</LineNumber>
|
||||
<EnabledFlag>1</EnabledFlag>
|
||||
<Address>134311210</Address>
|
||||
<ByteObject>0</ByteObject>
|
||||
<HtxType>0</HtxType>
|
||||
<ManyObjects>0</ManyObjects>
|
||||
<SizeOfObject>0</SizeOfObject>
|
||||
<BreakByAccess>0</BreakByAccess>
|
||||
<BreakIfRCount>1</BreakIfRCount>
|
||||
<Filename>.\mac_receiver.c</Filename>
|
||||
<ExecCommand></ExecCommand>
|
||||
<Expression>\\tokenring_project\mac_receiver.c\18</Expression>
|
||||
</Bp>
|
||||
<Bp>
|
||||
<Number>1</Number>
|
||||
<Type>0</Type>
|
||||
<LineNumber>199</LineNumber>
|
||||
<EnabledFlag>1</EnabledFlag>
|
||||
<Address>0</Address>
|
||||
<ByteObject>0</ByteObject>
|
||||
<HtxType>0</HtxType>
|
||||
<ManyObjects>0</ManyObjects>
|
||||
<SizeOfObject>0</SizeOfObject>
|
||||
<BreakByAccess>0</BreakByAccess>
|
||||
<BreakIfRCount>0</BreakIfRCount>
|
||||
<Filename>.\main.c</Filename>
|
||||
<ExecCommand></ExecCommand>
|
||||
<Expression></Expression>
|
||||
</Bp>
|
||||
</Breakpoint>
|
||||
<Breakpoint/>
|
||||
<WatchWindow1>
|
||||
<Ww>
|
||||
<count>0</count>
|
||||
@ -208,11 +175,6 @@
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>lastToken</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>4</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>queue_macData_id</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<MemoryWindow1>
|
||||
<Mm>
|
||||
@ -287,7 +249,7 @@
|
||||
<EnableFlashSeq>0</EnableFlashSeq>
|
||||
<EnableLog>0</EnableLog>
|
||||
<Protocol>2</Protocol>
|
||||
<DbgClock>10000000</DbgClock>
|
||||
<DbgClock>1800000</DbgClock>
|
||||
</DebugDescription>
|
||||
</TargetOption>
|
||||
</Target>
|
||||
|
@ -10,7 +10,7 @@
|
||||
<TargetName>Target 1</TargetName>
|
||||
<ToolsetNumber>0x4</ToolsetNumber>
|
||||
<ToolsetName>ARM-ADS</ToolsetName>
|
||||
<pCCUsed>5060960::V5.06 update 7 (build 960)::C:\Program Files (x86)\ARM_Compiler_5.06u7</pCCUsed>
|
||||
<pCCUsed>5060960::V5.06 update 7 (build 960)::..\..\Program Files (x86)\ARM_Compiler_5.06u7</pCCUsed>
|
||||
<uAC6>0</uAC6>
|
||||
<TargetOption>
|
||||
<TargetCommonOption>
|
||||
|
Reference in New Issue
Block a user