Fix a potential NULL pointer dereference.
This commit is contained in:
parent
f46e650a63
commit
20f813d5bc
@ -335,7 +335,7 @@ cressi_leonardo_extract_dives (dc_device_t *abstract, const unsigned char data[]
|
|||||||
if (header < RB_PROFILE_BEGIN || header + 2 > RB_PROFILE_END ||
|
if (header < RB_PROFILE_BEGIN || header + 2 > RB_PROFILE_END ||
|
||||||
footer < RB_PROFILE_BEGIN || footer + 2 > RB_PROFILE_END)
|
footer < RB_PROFILE_BEGIN || footer + 2 > RB_PROFILE_END)
|
||||||
{
|
{
|
||||||
ERROR (abstract->context, "Invalid ringbuffer pointer detected.");
|
ERROR (context, "Invalid ringbuffer pointer detected.");
|
||||||
free (buffer);
|
free (buffer);
|
||||||
return DC_STATUS_DATAFORMAT;
|
return DC_STATUS_DATAFORMAT;
|
||||||
}
|
}
|
||||||
@ -344,7 +344,7 @@ cressi_leonardo_extract_dives (dc_device_t *abstract, const unsigned char data[]
|
|||||||
unsigned int header2 = array_uint16_le (data + footer);
|
unsigned int header2 = array_uint16_le (data + footer);
|
||||||
unsigned int footer2 = array_uint16_le (data + header);
|
unsigned int footer2 = array_uint16_le (data + header);
|
||||||
if (header2 != header || footer2 != footer) {
|
if (header2 != header || footer2 != footer) {
|
||||||
ERROR (abstract->context, "Invalid ringbuffer pointer detected.");
|
ERROR (context, "Invalid ringbuffer pointer detected.");
|
||||||
free (buffer);
|
free (buffer);
|
||||||
return DC_STATUS_DATAFORMAT;
|
return DC_STATUS_DATAFORMAT;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user