)]}'
{
  "commit": "9c6efb3c9969a7b24d31624ce00d3cfc17e6f7d3",
  "tree": "deb67932401c0edf6c20c87316cd2cd8dc786b3a",
  "parents": [
    "d06a9560188fe468c183127f6f5a1e5202bb3ca3"
  ],
  "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": "Mon Jul 07 10:12:38 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(cherry picked from commit a0e69f7bc83a29b40e68355aac3e0c39b113b20f)\nSigned-off-by: LIU Hao \u003clh_mouse@126.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"
    }
  ]
}
