Skip to content

Commit 2f0cfa9

Browse files
stickbreakerme-no-dev
authored andcommitted
Update pgmspace.h (#707)
Fix redefines of strXXX, original was using strnXXX with length set to 0x7fffffff. This caused problems with strcpy and strcat. The destination buffer was NULL'd to 0x7fffffff which killed the app.
1 parent 8dc0c86 commit 2f0cfa9

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

Diff for: cores/esp32/pgmspace.h

+5-8
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@ typedef unsigned short prog_uint16_t;
2929
typedef long prog_int32_t;
3030
typedef unsigned long prog_uint32_t;
3131

32-
#define SIZE_IRRELEVANT 0x7fffffff
33-
3432
#define PROGMEM
3533
#define PGM_P const char *
3634
#define PGM_VOID_P const void *
@@ -56,21 +54,20 @@ typedef unsigned long prog_uint32_t;
5654
#define memccpy_P memccpy
5755
#define memmem_P memmem
5856
#define memcpy_P memcpy
57+
#define strcpy_P strcpy
5958
#define strncpy_P strncpy
59+
#define strcat_p strcat
6060
#define strncat_P strncat
61+
#define strcmp_P strcmp
6162
#define strncmp_P strncmp
63+
#define strcasecmp_P strcasecmp
6264
#define strncasecmp_P strncasecmp
65+
#define strlen_P strlen
6366
#define strnlen_P strnlen
6467
#define strstr_P strstr
6568
#define printf_P printf
6669
#define sprintf_P sprintf
6770
#define snprintf_P snprintf
6871
#define vsnprintf_P vsnprintf
6972

70-
#define strlen_P(strP) strnlen_P((strP), SIZE_IRRELEVANT)
71-
#define strcasecmp_P(str1, str2P) strncasecmp_P((str1), (str2P), SIZE_IRRELEVANT)
72-
#define strcmp_P(str1, str2P) strncmp_P((str1), (str2P), SIZE_IRRELEVANT)
73-
#define strcat_P(dest, src) strncat_P((dest), (src), SIZE_IRRELEVANT)
74-
#define strcpy_P(dest, src) strncpy_P((dest), (src), SIZE_IRRELEVANT)
75-
7673
#endif

0 commit comments

Comments
 (0)