diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/binn/0001_fix_uwp.patch | |
Diffstat (limited to 'vcpkg/ports/binn/0001_fix_uwp.patch')
| -rw-r--r-- | vcpkg/ports/binn/0001_fix_uwp.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/vcpkg/ports/binn/0001_fix_uwp.patch b/vcpkg/ports/binn/0001_fix_uwp.patch new file mode 100644 index 0000000..f43cdd2 --- /dev/null +++ b/vcpkg/ports/binn/0001_fix_uwp.patch @@ -0,0 +1,54 @@ +diff --git a/src/binn.c b/src/binn.c +index ef32f35..d12d473 100644 +--- a/src/binn.c ++++ b/src/binn.c +@@ -142,8 +142,14 @@ BINN_PRIVATE void copy_be64(u64 *pdest, u64 *psource) { + /***************************************************************************/ + + #ifndef WIN32 + #define stricmp strcasecmp + #define strnicmp strncasecmp ++#define sprintf_s(b, n, ...) sprintf(b, __VA_ARGS__) ++#define strcpy_s(b, n, s) strcpy(b, s) ++#else ++#define stricmp _stricmp ++#define strnicmp _strnicmp ++#define strdup _strdup + #endif + + BINN_PRIVATE BOOL IsValidBinnHeader(void *pbuf, int *ptype, int *pcount, int *psize, int *pheadersize); +@@ -1582,6 +1588,7 @@ BINN_PRIVATE BOOL binn_read_pair(int expected_type, void *ptr, int pos, int *pid + base = p; + plimit = p + size - 1; + p += header_size; ++ key = 0; + + for (i = 0; i < count; i++) { + switch (type) { +@@ -3333,7 +3340,7 @@ char * APIENTRY binn_get_str(binn *value) { + + if (type_family(value->type) == BINN_FAMILY_INT) { + if (copy_int_value(value->ptr, &vint, value->type, BINN_INT64) == FALSE) return NULL; +- sprintf(buf, "%" INT64_FORMAT, vint); ++ sprintf_s(buf, sizeof buf, "%" INT64_FORMAT, vint); + goto loc_convert_value; + } + +@@ -3341,14 +3348,14 @@ char * APIENTRY binn_get_str(binn *value) { + case BINN_FLOAT: + value->vdouble = value->vfloat; + case BINN_DOUBLE: +- sprintf(buf, "%g", value->vdouble); ++ sprintf_s(buf, sizeof buf, "%g", value->vdouble); + goto loc_convert_value; + case BINN_STRING: + return (char*) value->ptr; + case BINN_BOOL: + if (value->vbool) +- strcpy(buf, "true"); ++ strcpy_s(buf, sizeof buf, "true"); + else +- strcpy(buf, "false"); ++ strcpy_s(buf, sizeof buf, "false"); + goto loc_convert_value; + } |