summaryrefslogtreecommitdiffstats
path: root/.gitignore
AgeCommit message (Collapse)AuthorFilesLines
4 hoursplist: fix the (sec, usec) date API round tripGravatar Flavio Toffalini1-0/+1
plist_set_date_val stores val = sec + usec / 1000000, but plist_get_date_val splits it with a truncating cast and fabs(): *sec = (int32_t)val; val = fabs((val - (int64_t)val) * 1000000); *usec = (int32_t)val; Two results are wrong. The product is truncated, so set(5, 6) reads back as (5, 5) - 29.3% of round trips over sec in [0, 3] come back a microsecond short. And for a negative value, truncation toward zero plus fabs() give a pair that does not denote the same instant: set(-3, 250000) stores -2.75 and reads back as (-2, 750000), which the setter would store as -1.25. Every round trip with sec < 0 and usec != 0 is wrong. (int32_t)val is also undefined when the stored value is outside the int32_t range. Round the seconds down, round the fraction to microseconds carrying 1000000 into the seconds, and clamp the seconds before converting, so sec + usec / 1000000 == val to the microsecond with 0 <= usec < 1000000 - the convention the setter uses. Add test/date_val.c covering fixed cases and a sweep over sec in [-2, 2]. It fails on an unmodified tree - set(5, 6), set(-3, 250000) and set(-1, 1) all come back as different instants - and passes with this change, with make check at 44/44. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Arn4YaWtcQBDsQuJtyBmFP
14 hourstest: Add binary plist parser behavior testsGravatar Nathan Chandrasekar1-0/+1
Build small binary plists in memory and check that arrays and dicts parse correctly with 1, 2 and 3 byte object references, and that strings, extended size markers and array/dict references extending beyond the object data area into the offset table are rejected. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-02-25xplist: Enforce single root value inside <plist>Gravatar Sami Kortelainen1-0/+10
Ensure that XML property lists contain exactly one root value inside the <plist> element and reject any additional value nodes before </plist>. Add tests covering root value handling and nested CF$UID conversion behavior. Co-authored-by: Sami Kortelainen <sami.kortelainen@piceasoft.com> Co-authored-by: Nikias Bassen <nikias@gmx.li>
2023-04-21Update .gitignoreGravatar Nikias Bassen1-0/+3
2022-02-07Update .gitignoreGravatar Nikias Bassen1-0/+3
2019-10-23Updated .gitignoreGravatar Nikias Bassen1-0/+2
2014-02-11Ignore .kateconfig filesGravatar Andrew Udvare1-0/+1
2014-02-11Ignore .libs in cython, backup files, test-driverGravatar Andrew Udvare1-0/+4
2013-12-13change build system to autotoolsGravatar Nikias Bassen1-1/+50
2011-09-26Added .gitignore fileGravatar Nikias Bassen1-0/+2