Skip to content

Commit 38d3058

Browse files
committed
Added a fix for an overflow issue that could happen with NmeaStringSize variable.
Issue #209
1 parent faf1241 commit 38d3058

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

src/boards/LoRaMote/gps-board.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
103103
{
104104
if( UartGetChar( &Uart1, &data ) == 0 )
105105
{
106-
if( ( data == '$' ) || ( NmeaStringSize >= 128 ) )
106+
if( ( data == '$' ) || ( NmeaStringSize >= 127 ) )
107107
{
108108
NmeaStringSize = 0;
109109
}
@@ -112,7 +112,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
112112

113113
if( data == '\n' )
114114
{
115-
NmeaString[NmeaStringSize] = '\0';
115+
NmeaString[NmeaStringSize++] = '\0';
116116
GpsParseGpsData( ( int8_t* )NmeaString, NmeaStringSize );
117117
UartDeInit( &Uart1 );
118118
BlockLowPowerDuringTask ( false );

src/boards/NAMote72/gps-board.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
119119
{
120120
if( UartGetChar( &Uart1, &data ) == 0 )
121121
{
122-
if( ( data == '$' ) || ( NmeaStringSize >= 128 ) )
122+
if( ( data == '$' ) || ( NmeaStringSize >= 127 ) )
123123
{
124124
NmeaStringSize = 0;
125125
}
@@ -128,7 +128,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
128128

129129
if( data == '\n' )
130130
{
131-
NmeaString[NmeaStringSize] = '\0';
131+
NmeaString[NmeaStringSize++] = '\0';
132132
GpsParseGpsData( ( int8_t* )NmeaString, NmeaStringSize );
133133
UartDeInit( &Uart1 );
134134
BlockLowPowerDuringTask ( false );

src/boards/SensorNode/gps-board.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
9494
{
9595
if( UartGetChar( &Uart1, &data ) == 0 )
9696
{
97-
if( ( data == '$' ) || ( NmeaStringSize >= 128 ) )
97+
if( ( data == '$' ) || ( NmeaStringSize >= 127 ) )
9898
{
9999
NmeaStringSize = 0;
100100
}
@@ -103,7 +103,7 @@ void GpsMcuIrqNotify( UartNotifyId_t id )
103103

104104
if( data == '\n' )
105105
{
106-
NmeaString[NmeaStringSize] = '\0';
106+
NmeaString[NmeaStringSize++] = '\0';
107107
GpsParseGpsData( ( int8_t* )NmeaString, NmeaStringSize );
108108
UartDeInit( &Uart1 );
109109
BlockLowPowerDuringTask ( false );

0 commit comments

Comments
 (0)