summaryrefslogtreecommitdiff
path: root/include/unistd.h
diff options
context:
space:
mode:
authorjvoisin2026-04-30 17:57:51 +0200
committerjvoisin2026-04-30 17:57:51 +0200
commit7fecafe015505c0ebd47780050118ff789a9ae3f (patch)
treed397318b8422b7898109760aa5c5eebf3560efad /include/unistd.h
parentdfdf53df99c8f59e5e3a4296c455041bee96a88d (diff)
Fix a POSIX violation for swab
Diffstat (limited to 'include/unistd.h')
-rw-r--r--include/unistd.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/unistd.h b/include/unistd.h
index a2b3105..a73279b 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -177,7 +177,7 @@ _FORTIFY_FN(swab) void swab(const void * _FORTIFY_POS0 __os,
177 size_t __bs = __bos(__os, 0); 177 size_t __bs = __bos(__os, 0);
178 size_t __bd = __bos(__od, 0); 178 size_t __bd = __bos(__od, 0);
179 179
180 if ((size_t)__n > __bs || (size_t)__n > __bd) 180 if (__n > 0 && ((size_t)__n > __bs || (size_t)__n > __bd))
181 __builtin_trap(); 181 __builtin_trap();
182 return __orig_swab(__os, __od, __n); 182 return __orig_swab(__os, __od, __n);
183} 183}