)]}'
{
  "commit": "07d3c6f4dc290fae5ca6152ebcb37d6815c411ab",
  "tree": "f0fd64c37289dfd6bdeb193221ac274355799b98",
  "parents": [
    "5ddf42d01f30d9db392aedf2cf7e0f36980c882d"
  ],
  "author": {
    "name": "Aleksei Khoroshilov",
    "email": "akhoroshilov@brave.com",
    "time": "Mon Oct 06 21:09:34 2025 +0700"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Oct 08 04:44:34 2025 -0700"
  },
  "message": "Handle symlinked directories correctly during gn clean on Windows.\n\nPrior to this change, gn clean would recursively delete the contents of\nsymlinked directories on Windows, which could cause data loss when the\nsymlink pointed to important directories outside the out/\u003cdir\u003e.\n\nThis change adds a check for FILE_ATTRIBUTE_REPARSE_POINT to prevent\nrecursive deletion of symlinked directories. Now gn clean will only\nremove the symlink itself while preserving the contents of the target\ndirectory.\n\nChange-Id: If0f4a631de081ad2aa4815db2927df8f80e9bf55\n\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/19980\nReviewed-by: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nReviewed-by: David Turner \u003cdigit@google.com\u003e\nCommit-Queue: Sylvain Defresne \u003csdefresne@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dbb69ec4a5aaf477f424ec281b2a46a1f065bacb",
      "old_mode": 33188,
      "old_path": "src/base/files/file_util.h",
      "new_id": "e58bbd5cb2a5ab85c67785ae27e6e78dc740463d",
      "new_mode": 33188,
      "new_path": "src/base/files/file_util.h"
    },
    {
      "type": "modify",
      "old_id": "0bc07bf21515a186d5fc871c8fffbc31c3c245f3",
      "old_mode": 33188,
      "old_path": "src/base/files/file_util_win.cc",
      "new_id": "d2717990b555917048deb8aba9c8841908540ffc",
      "new_mode": 33188,
      "new_path": "src/base/files/file_util_win.cc"
    }
  ]
}
