)]}'
{
  "commit": "a0e69f7bc83a29b40e68355aac3e0c39b113b20f",
  "tree": "b716022623e954d92ba17c8ce0eb9a1811b7b5c8",
  "parents": [
    "9c2668ef77e75ea4d8a6c7d100b14643269caec3"
  ],
  "author": {
    "name": "Igor Kostenko",
    "email": "work.kerogi@gmail.com",
    "time": "Thu Jul 03 19:02:20 2025 +0200"
  },
  "committer": {
    "name": "LIU Hao",
    "email": "lh_mouse@126.com",
    "time": "Sat Jul 05 19:27:15 2025 +0800"
  },
  "message": "crt/ssp: fix stack smashing protection bootstrapping\n\nFix stack protection bootstrapping issue where the guard initialization\nfunction itself triggers false positive stack overflow detection.\n\nThis issue occurs when the mingw-w64 CRT library is built with GCC\u0027s\n-fstack-protector-strong flag, which effectively renders any resulting\nbinary (whether statically or dynamically linked) corrupted. The final\nbinary crashes during startup, before it even reaches the main function.\n\nThe problem is that the init() function starts with __stack_chk_guard \u003d 0\nbut initializes it to a random value, causing the stack protection check\nto always fail (0 !\u003d random) at function exit.\n\nBy introducing attribute __no_stack_protector__ we prevent early testing\nof the uninitialized guard value.\n\nSigned-off-by: Igor Kostenko \u003cwork.kerogi@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ff22e020c7f1e3a5f4b2061af7e62a438e236af",
      "old_mode": 33188,
      "old_path": "mingw-w64-crt/ssp/stack_chk_guard.c",
      "new_id": "be43d8c7e222784b562fec8d7c28b2d4b008b2d0",
      "new_mode": 33188,
      "new_path": "mingw-w64-crt/ssp/stack_chk_guard.c"
    }
  ]
}
