)]}'
{
  "commit": "cff91bb9a7168461a1e17f115e0fc906622c5b6b",
  "tree": "b040ba6e6260ebcc4ec293e5fae01b61a09ac62a",
  "parents": [
    "07e34538d5a7d5e86ab47c7ba47becb32f7d827e"
  ],
  "author": {
    "name": "Pali Rohár",
    "email": "pali.rohar@gmail.com",
    "time": "Sun Apr 13 18:34:42 2025 +0200"
  },
  "committer": {
    "name": "Martin Storsjö",
    "email": "martin@martin.st",
    "time": "Mon May 05 23:43:59 2025 +0300"
  },
  "message": "crt: Fix POSIX stat() with 32-bit st_size for pre-msvcr100 build\n\nFor POSIX stat compatibility, it is not possible to use msvcrt _stat32() or\n_stat64i32() from crtdll.dll - msvcr100.dll CRT libraries as their\nimplementations do not signal EOVERFLOW error when file size does not fit\ninto the stat\u0027s st_size field. Signalling EOVERFLOW is required for POSIX\ncompatibility. New CRT libraries (msvcr110.dll, msvcr120.dll and UCRT) have\nimplementation of _stat32() and _stat64i32() more compatible with POSIX and\nproperly return EOVERFLOW when file size does not fit into the struct\nstat\u0027s st_size field.\n\nSo for pre-msvcr110 builds, use only _stat64() function for implementing\nPOSIX stat in mingw-w64 and do check overflow in mingw-w64 the wrapper.\n\nSigned-off-by: Martin Storsjö \u003cmartin@martin.st\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "195251ab17defca49eec5a1c5b4bf9ca631bc4da",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/Makefile.am",
      "new_id": "1c40fe32d8f78801804b990b49fdb510213033a6",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/Makefile.am"
    },
    {
      "type": "rename",
      "old_id": "9623c80f5b3529a9996e6621a1eefe59c7704128",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/stat32.c",
      "new_id": "9623c80f5b3529a9996e6621a1eefe59c7704128",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110plus_stat32.c",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "2799ed42e36835bb8ec5d0ba67ccf7bf78093661",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/stat64i32.c",
      "new_id": "2799ed42e36835bb8ec5d0ba67ccf7bf78093661",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110plus_stat64i32.c",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "0123148d56b68a891fcc774909be87a48780af37",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/wstat32.c",
      "new_id": "0123148d56b68a891fcc774909be87a48780af37",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110plus_wstat32.c",
      "score": 100
    },
    {
      "type": "rename",
      "old_id": "1ad9b53b45f339e078316ac72a11316b6a688a6a",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/stdio/wstat64i32.c",
      "new_id": "1ad9b53b45f339e078316ac72a11316b6a688a6a",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110plus_wstat64i32.c",
      "score": 100
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d2d45e83a113e8afd53313a4fed245cef8614920",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110pre_stat32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e3311f28ae7554d2b648a83d5cb12c25942c96c0",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110pre_stat64i32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b7fb9489d88ad9acd169bc3a3442fcbd27fb1167",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110pre_wstat32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d872e9e590e590e8bc1f67cb77f924493e819735",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/stdio/msvcr110pre_wstat64i32.c"
    }
  ]
}
