aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/binn/0001_fix_uwp.patch
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/binn/0001_fix_uwp.patch
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/binn/0001_fix_uwp.patch')
-rw-r--r--vcpkg/ports/binn/0001_fix_uwp.patch54
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;
+ }