)]}'
{
  "commit": "06f154a833028b446fa421e6cc465b10f90ecc27",
  "tree": "423fbc25a6d840915ffda5e8380a3d9005892e49",
  "parents": [
    "c582e0cbd8b65583620c6587384a2e4326d6e441"
  ],
  "author": {
    "name": "scottb@google.com",
    "email": "scottb@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Thu Apr 17 05:36:05 2008 +0000"
  },
  "committer": {
    "name": "scottb@google.com",
    "email": "scottb@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Thu Apr 17 05:36:05 2008 +0000"
  },
  "message": "Fixes issue #1973; a custom field serializer that internally called readObject() would cause the stream backrefs to get out of sync.  This change fixes the off behavior and adds unit tests.\n\nNote that if the instantiate method of a custom field serializer were to deserialize a cycle back to the original object, those refs would be seen as null in the final object graph.\n\nPatch by: fizbin\nReview by: me\n\n\ngit-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@2479 8db76d5a-ed1c-0410-87a9-c151d255dfc7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cc7118afb2315b145a59267668e37a0f6e3efa10",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/impl/AbstractSerializationStreamReader.java",
      "new_id": "76ed13b3f2e8d46b31bb902a89e5c5831edab452",
      "new_mode": 33188,
      "new_path": "user/src/com/google/gwt/user/client/rpc/impl/AbstractSerializationStreamReader.java"
    },
    {
      "type": "modify",
      "old_id": "b56818616556fbdb6dc84d259528edb185a39d11",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/impl/ClientSerializationStreamReader.java",
      "new_id": "4146c5df05490fc90d4351fbf673d1293806f2c4",
      "new_mode": 33188,
      "new_path": "user/src/com/google/gwt/user/client/rpc/impl/ClientSerializationStreamReader.java"
    },
    {
      "type": "modify",
      "old_id": "eca479fd31b46a40fad8188dad418ea7a9ec6f86",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/impl/ServerSerializationStreamReader.java",
      "new_id": "7b6b05e36bbaf31a3c47c401f7abf04276aea60d",
      "new_mode": 33188,
      "new_path": "user/src/com/google/gwt/user/server/rpc/impl/ServerSerializationStreamReader.java"
    },
    {
      "type": "modify",
      "old_id": "26c1abe811378a968ae9ca4f5296bd5e3c2e6d7a",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTest.java",
      "new_id": "524a3359faae0309e11b3dd652694dc7f92554c0",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTest.java"
    },
    {
      "type": "modify",
      "old_id": "e90d71e2a161d5c325dcfd6456e039ce0eff1635",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestService.java",
      "new_id": "8d0541c5c018410e46f3ab707d58447b91ec16a5",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestService.java"
    },
    {
      "type": "modify",
      "old_id": "9260623460e4fbff72c97330b13ea9e91538b127",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestServiceAsync.java",
      "new_id": "d0d2163a32c3fb060d7de3e6b6b6a6468d66747e",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestServiceAsync.java"
    },
    {
      "type": "modify",
      "old_id": "a075066b6460c0721452cfa2988e7f3d14fef7d1",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestSetFactory.java",
      "new_id": "71c67c24bad8dc9ad5f23068f142ff592d8b5e75",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestSetFactory.java"
    },
    {
      "type": "modify",
      "old_id": "0d16946ce6a04a1f82b17522c1c93e51721ad016",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestSetValidator.java",
      "new_id": "ded6f14e23c56558df70f90f6f345c4b3a31e212",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/CustomFieldSerializerTestSetValidator.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "baa45184d9e34eba35277a3b8d424c03add124e2",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/ManuallySerializedImmutableClass.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0533db32a16020c8d80480ecd9c0c6fff08922bd",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/client/rpc/ManuallySerializedImmutableClass_CustomFieldSerializer.java"
    },
    {
      "type": "modify",
      "old_id": "309702eb3b860c73eea65e60f23be3aaeda9a518",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/rpc/CustomFieldSerializerTestServiceImpl.java",
      "new_id": "46205ba7836ffb1126faf31643b327a4d4449c09",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/server/rpc/CustomFieldSerializerTestServiceImpl.java"
    }
  ]
}
