)]}'
{
  "log": [
    {
      "commit": "5a49789a9b1f6447aeafbbbdd5b235dd10c471d5",
      "tree": "611853ba4f58cc676cffdfdf622dad348372c269",
      "parents": [
        "dd905a2ae14bf2ee59a068f1c3acbca1ff0b7067"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 03 16:29:04 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Sep 03 16:29:04 2016 +0200"
      },
      "message": "patch 7.4.2312\nProblem:    Crash when autocommand moves to another tab. (Dominique Pelle)\nSolution:   When navigating to another window halfway the :edit command go\n            back to the right window.\n"
    },
    {
      "commit": "11fbc2866ccc11b4dd1726abdaf582a78ef3f743",
      "tree": "1cb5a456cb814c1e9f37c972d2fd7d80e77c2c6c",
      "parents": [
        "44f660c42191062214552f2bdb2e9bcc4e23e6fc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 02 21:48:32 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 02 21:48:32 2016 +0200"
      },
      "message": "patch 7.4.2309\nProblem:    Crash when doing tabnext in a BufUnload autocmd. (Dominique Pelle)\nSolution:   When detecting that the tab page changed, don\u0027t just abort but\n            delete the window where w_buffer is NULL.\n"
    },
    {
      "commit": "edf3f97ae2af024708ebb4ac614227327033ca47",
      "tree": "82fed9ebfc85a69d3cff613f9dab11c8750fad8b",
      "parents": [
        "965ed14973fd3f1b2aace7bae4d4722b71ca04f9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 22:49:24 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Aug 29 22:49:24 2016 +0200"
      },
      "message": "patch 7.4.2293\nProblem:    Modelines in source code are inconsistant.\nSolution:   Use the same line in most files.  Add \u0027noet\u0027.  (Naruhiko Nishino)\n"
    },
    {
      "commit": "46328f9a1cc8047d1e05095bc9f531038c5a4028",
      "tree": "6c304ad0ec0fdaafa7e4e490681a959f36ad46f2",
      "parents": [
        "4427db9bb2f4b4587559eac18cc7ba10c52c6e8b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 15:39:57 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 28 15:39:57 2016 +0200"
      },
      "message": "patch 7.4.2279\nProblem:    Starting diff mode with the cursor in the last line might end up\n            only showing one closed fold. (John Beckett)\nSolution:   Scroll the window to show the same relative cursor position.\n"
    },
    {
      "commit": "5b30291785e6b9be1a607504c14bd03c601b59a6",
      "tree": "86e6c5c0cf7090f485392cfecb80b43602a8b0cd",
      "parents": [
        "ba2099034f92a2814494f37bddb0c57d034401b4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 24 22:11:55 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 24 22:11:55 2016 +0200"
      },
      "message": "patch 7.4.2250\nProblem:    Some error message cannot be translated.\nSolution:   Enclose them in _() and N_(). (Dominique Pelle)\n"
    },
    {
      "commit": "e59215c7dcae17b03daf39517560cfaa03314f5a",
      "tree": "6c0a732a4d16d50668db89ea7d5a8f2cd8d35884",
      "parents": [
        "e56132bb4167f8b6ea4814cc2c99a71df3d07ff8"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 14 19:08:45 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Aug 14 19:08:45 2016 +0200"
      },
      "message": "patch 7.4.2212\nProblem:    Mark \" is not set when closing a window in another tab. (Guraga)\nSolution:   Check all tabs for the window to be valid. (based on patch by\n            Hirohito Higashi, closes #974)\n"
    },
    {
      "commit": "b5ae48e9ffd3b8eb6ca4057de11f1bddcde8ce6f",
      "tree": "4102b935644caa2544138f3abb1d038523568d94",
      "parents": [
        "ebcccad573a7722e16cf2dd435cc62b61f61d9cc"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 12 22:23:25 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Aug 12 22:23:25 2016 +0200"
      },
      "message": "patch 7.4.2204\nProblem:    It is not easy to get information about buffers, windows and\n            tabpages.\nSolution:   Add getbufinfo(), getwininfo() and gettabinfo(). (Yegappan\n            Lakshmanan)\n"
    },
    {
      "commit": "2932359000b2f918d5fade79ea4d124d5943cd07",
      "tree": "1ca4fa98569a4d20ce066c7d6254404bcf431b47",
      "parents": [
        "6835dc61aebca2b602d85a9d63c449ace58683b4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 24 22:04:11 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 24 22:04:11 2016 +0200"
      },
      "message": "patch 7.4.2101\nProblem:    Looping over windows, buffers and tab pages is inconsistant.\nSolution:   Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan)\n"
    },
    {
      "commit": "12c11d553053f5a9eae9eb3c518279b12fa928c2",
      "tree": "9516b5c3300a1799e1a5657457dedd7e8d526749",
      "parents": [
        "4f0383bc3fe5af0229fb66b53fe94329af783eff"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 23:13:03 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 23:13:03 2016 +0200"
      },
      "message": "patch 7.4.2077\nProblem:    Cannot update \u0027tabline\u0027 when a tab was closed.\nSolution:   Add the TabClosed autocmd event. (partly by Felipe Morales)\n"
    },
    {
      "commit": "c917da4b3e8801a255dbefea8e4ed19c1c716dd8",
      "tree": "4c4ca7b3b658f666aa781e2f9e51e9dafc57f6d6",
      "parents": [
        "0a0f641b9841189ba4180758109d04d0a26e50e3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 22:31:36 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 19 22:31:36 2016 +0200"
      },
      "message": "patch 7.4.2075\nProblem:    No autocommand event to initialize a window or tab page.\nSolution:   Add WinNew and TabNew events. (partly by Felipe Morales)\n"
    },
    {
      "commit": "7c0a2f367f2507669560b1a66423155c70d2e75b",
      "tree": "7cd0523311a25f653497197abc1fa86ed62bcc79",
      "parents": [
        "ea3f2e7be447a8f0c4436869620f908de5e8ef1e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 10 22:11:16 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jul 10 22:11:16 2016 +0200"
      },
      "message": "patch 7.4.2024\nProblem:    More buf_valid() calls can be optimized.\nSolution:   Use bufref_valid() instead.\n"
    },
    {
      "commit": "5d2ca0402954ff79b73d9c86cc16c8a6454b75a7",
      "tree": "a6c082cefb2ec34e4c73a4613ddd711f62ecab7f",
      "parents": [
        "f4fba6dcd508cb369ffa6916d9cb3fcf3d7ed548"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 17:11:21 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 26 17:11:21 2016 +0200"
      },
      "message": "patch 7.4.1956\nProblem:    When using CTRL-W f and pressing \"q\" at the ATTENTION dialog the\n            newly opened window is not closed.\nSolution:   Close the window and go back to the original one. (Norio Takagi,\n            Hirohito Higashi)\n"
    },
    {
      "commit": "888ccac8902cee186fbd47e971881f6d9b19c068",
      "tree": "d7180b8cc4b4ecfea5880e3f2971742a9689dae8",
      "parents": [
        "511972d810ea490955161ff5097ec2f57919ceaf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 04 18:49:36 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 04 18:49:36 2016 +0200"
      },
      "message": "patch 7.4.1895\nProblem:    Cannot use a window ID where a window number is expected.\nSolution:   Add LOWEST_WIN_ID, so that the window ID can be used where a\n            number is expected.\n"
    },
    {
      "commit": "991dea3ab185fb35e577ab0bdfd443cd4b43ccc6",
      "tree": "1eed204df1993f5844e584ea58e7edd08f213168",
      "parents": [
        "908be438794619f10ef7fa25e24e5893b2ae0189"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 24 11:31:32 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue May 24 11:31:32 2016 +0200"
      },
      "message": "patch 7.4.1835\nProblem:    When splitting and closing a window the status height changes.\nSolution:   Compute the frame height correctly. (Hirohito Higashi)\n"
    },
    {
      "commit": "3dda7db4e1f7c4a8110a1f83001ec36b46693d27",
      "tree": "418c0393359c61677232c185c6c5088d26ecfe75",
      "parents": [
        "b50e5f56861deb867478997397f7c784a7043233"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 03 21:22:58 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Apr 03 21:22:58 2016 +0200"
      },
      "message": "patch 7.4.1704\nProblem:    Using freed memory with \"wincmd p\". (Dominique Pelle)\nSolution:   Also clear \"prevwin\" in other tab pages.\n"
    },
    {
      "commit": "42356150badca33b4e42dc8172abbceff2e86cbe",
      "tree": "ca62b0037477bd26896097f147a1b49823f93572",
      "parents": [
        "758535a1df4c5e86b45dddf12db2a54dea28ca40"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 22:27:40 2016 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 31 22:27:40 2016 +0200"
      },
      "message": "patch 7.4.1690\nProblem:    Can\u0027t compile with the conceal feature but without multi-byte.\nSolution:   Adjust #ifdef. (Owen Leibman)\n"
    },
    {
      "commit": "829c8e369630a7cbbdac015d8177b7fde25e2f19",
      "tree": "16863d92e1d909bec874249063bce9cd07fde657",
      "parents": [
        "7eba3d2cbf19e731dc51652bc26099cc253d538a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 23:07:23 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 23:07:23 2016 +0100"
      },
      "message": "patch 7.4.1615\nProblem:    Build fails with tiny features.\nSolution:   Adjust #ifdefs.\n"
    },
    {
      "commit": "44a2f923c00f1384c9ecde12fb5b4711bc20702e",
      "tree": "ff48a0f263f488b023e5b4c7d45af05dade92e8f",
      "parents": [
        "cc6cf9b9f9045a7d8b5923ea0c556e9a4c2567d3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 22:11:51 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Mar 19 22:11:51 2016 +0100"
      },
      "message": "patch 7.4.1611\nProblem:    The versplit feature makes the code uneccessary complicated.\nSolution:   Remove FEAT_VERTSPLIT, always support vertical splits when\n            FEAT_WINDOWS is defined.\n"
    },
    {
      "commit": "9cdf86b86f5fdb5a45b682f336846f9d9a9c6f1f",
      "tree": "905ddef78df904d3060bd749cf4c073dbeb1de78",
      "parents": [
        "86edef664efccbfe685906c854b9cdd04e56f2d5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 13 19:04:51 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 13 19:04:51 2016 +0100"
      },
      "message": "patch 7.4.1558\nProblem:    It is not easy to find out what windows display a buffer.\nSolution:   Add win_findbuf().\n"
    },
    {
      "commit": "86edef664efccbfe685906c854b9cdd04e56f2d5",
      "tree": "8c60cfa3d606624d81812b058124a4eac774fab8",
      "parents": [
        "a3442cb5056ca62fc71fa03f68a9395e4391caf4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 13 18:07:30 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 13 18:07:30 2016 +0100"
      },
      "message": "patch 7.4.1557\nProblem:    Windows cannot be identified.\nSolution:   Add a unique window number to each window and functions to use it.\n"
    },
    {
      "commit": "f1d2501ebe33e148886c2914acd33140e20ee222",
      "tree": "49e0f2df5cf7358f4bbd4f5ec25a2359753ca671",
      "parents": [
        "00ded43a5a85df57abb74f9e3a38a401f6fbd8fd"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 03 12:22:53 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Mar 03 12:22:53 2016 +0100"
      },
      "message": "patch 7.4.1476\nProblem:    Function arguments marked as unused while they are not.\nSolution:   Remove UNUSED. (Yegappan Lakshmanan)\n"
    },
    {
      "commit": "48e330aff911be1c798c88a973af6437a8141fce",
      "tree": "4945b46753c6220ae5e8cd406d139e5640bd39c4",
      "parents": [
        "4e221c99e85ed40c98892068a01270b9e7492d98"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 23 14:53:34 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Feb 23 14:53:34 2016 +0100"
      },
      "message": "patch 7.4.1399\nProblem:    The MS-DOS code does not build.\nSolution:   Remove the old MS-DOS code.\n"
    },
    {
      "commit": "b638a7be952544ceb03052c25b84224577a6494b",
      "tree": "4a37ca954a03fba25f9e7a81b7f54cf23c1013cb",
      "parents": [
        "764b23c8fd3369cb05ae9122abf3ca16fec539d7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 21:29:58 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jan 30 21:29:58 2016 +0100"
      },
      "message": "patch 7.4.1215\nProblem:    Using old style function declarations.\nSolution:   Change to new style function declarations. (script by Hirohito\n            Higashi)\n"
    },
    {
      "commit": "baaa7e9ec7398a813e21285c272fa99792642077",
      "tree": "e9636114bf7c80ae3f7ded9ba9edb8b3ea504344",
      "parents": [
        "92b8b2d307e34117f146319872010b0ccc9d2713"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 29 22:47:03 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 29 22:47:03 2016 +0100"
      },
      "message": "patch 7.4.1199\nProblem:    Still using __ARGS.\nSolution:   Remove __ARGS in several files. (script by Hirohito Higashi)\n"
    },
    {
      "commit": "62ef797496c6243d111c596a592a8ef8c1d1e710",
      "tree": "0240bfaa03d820996eff5e2dea1a0b51771764c1",
      "parents": [
        "da5dcd936656f524dd0ae7cb2685245f07f5720f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 19 14:51:54 2016 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 19 14:51:54 2016 +0100"
      },
      "message": "patch 7.4.1137\nProblem:    Illegal memory access when using :copen and :cclose.\nSolution:   Avoid that curbuf is invalid. (suggestion by Justin M. Keyes)\n            Add a test.\n"
    },
    {
      "commit": "e7fedb6ebe72d9a475aa65109b77d5ed4667067a",
      "tree": "19327fc9d1ca538d9c5c81c7284adf492e790e6d",
      "parents": [
        "e3303cb0817e826e3c25d5dc4ac10b569d0841e1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 31 19:07:19 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Dec 31 19:07:19 2015 +0100"
      },
      "message": "patch 7.4.1008\nProblem:    The OS/2 code pollutes the source while nobody uses it these days.\nSolution:   Drop the support for OS/2.\n"
    },
    {
      "commit": "9dc2ce398bb3456cc8f590ef0260459798b34d2a",
      "tree": "436c5c47fb7cbcbf8acafe02af697601c89f45e1",
      "parents": [
        "90f5d0a5c3bbfeefcbc4d6eac59cf225ec714b28"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 05 19:47:04 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 05 19:47:04 2015 +0100"
      },
      "message": "patch 7.4.961\nProblem:    Test107 fails in some circunstances.\nSolution:   When using \"zt\", \"zb\" and \"z\u003d\" recompute the fraction.\n"
    },
    {
      "commit": "294a7e55b01149154807a23323038784549b8946",
      "tree": "63d78d7e35a5c2100c97ae878a88949fb860af6d",
      "parents": [
        "6040256d8b0404564ac6f192296b12ea9d175e7d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 22 19:39:38 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Nov 22 19:39:38 2015 +0100"
      },
      "message": "patch 7.4.936\nProblem:    Crash when dragging with the mouse.\nSolution:   Add safety check for NULL pointer. Check mouse position for valid\n            value. (Hirohito Higashi)\n"
    },
    {
      "commit": "6a2697ffd7e894861853b351689b0ddec8901c96",
      "tree": "01845ed85b8f32dfc2511700c15aac1ddf802adc",
      "parents": [
        "b4ff518d95aa57c2f8c0568c915035bef849581b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 19 13:14:30 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 19 13:14:30 2015 +0100"
      },
      "message": "patch 7.4.923\nProblem:    Prototypes not always generated.\nSolution:   Change #if to OR with PROTO.\n"
    },
    {
      "commit": "cde885473099296c4837de261833f48b24caf87c",
      "tree": "7864f4147f9c3b57a77b649c7d14e8ad31cafa6c",
      "parents": [
        "bd8539aac385d265d41da2e8ab59d7b9c3694557"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 19:14:00 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Aug 11 19:14:00 2015 +0200"
      },
      "message": "patch 7.4.822\nProblem:    More problems reported by coverity.\nSolution:   Avoid the warnings. (Christian Brabandt)\n"
    },
    {
      "commit": "6561d52ecbe6e24d1b90403078cc8b76c53c42fc",
      "tree": "f68a8d31545f7b89ae0e31a81f8e0ac0216a99ac",
      "parents": [
        "d51cb706a4e3ae99555bc214a64c83603c701139"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 21 15:48:27 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jul 21 15:48:27 2015 +0200"
      },
      "message": "patch 7.4.792\nProblem:    Can only conceal text by defining syntax items.\nSolution:   Use matchadd() to define concealing. (Christian Brabandt)\n"
    },
    {
      "commit": "40ce3a4e1f50badb75ca812e26557a9bc5fde8c6",
      "tree": "76b61256322ed7d01bbd3913ec3ae45f9d826b5a",
      "parents": [
        "77354e78a887e1b59ac519c5a1cb0e7fe9fc5899"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 18:08:39 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 18:08:39 2015 +0200"
      },
      "message": "patch 7.4.709\nProblem:    \":tabmove\" does not work as documented.\nSolution:   Make it work consistently.  Update documentation and add tests.\n            (Hirohito Higashi)\n"
    },
    {
      "commit": "5b14f89164fa2f40f52283226c98005887568317",
      "tree": "87d9743970b06a295154ee3bf7875388bd8d7d67",
      "parents": [
        "bbc1a592a0e0efd5101a58032e7e7cc9f3e9f417"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 15:43:05 2015 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Apr 21 15:43:05 2015 +0200"
      },
      "message": "patch 7.4.706\nProblem:    Window drawn wrong when \u0027laststatus\u0027 is zero and there is a\n            command-line window. (Yclept Nemo)\nSolution:   Set the status height a bit later. (Christian Brabandt)\n"
    },
    {
      "commit": "d45c07ac7499358c5cb096cadb675ce74ae3eaf6",
      "tree": "13875945fd62b050fb38fed1b109fedb350c2301",
      "parents": [
        "dfd7691bb85b345bd86cf30945a66acf7c782920"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 27 17:19:10 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Feb 27 17:19:10 2015 +0100"
      },
      "message": "updated for version 7.4.642\nProblem:    When using \"gf\" escaped spaces are not handled.\nSolution:   Recognize escaped spaces.\n"
    },
    {
      "commit": "84c8e5ab9cfb6826e880e8ae062ff3347bb6909e",
      "tree": "d8fde94422676bc61459e9cc66d367b9f567ee51",
      "parents": [
        "435797304adc544562934f3ea1572fdc81f6dd92"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 14 15:47:36 2015 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jan 14 15:47:36 2015 +0100"
      },
      "message": "updated for version 7.4.572\nProblem:    Address type of :wincmd depends on the argument.\nSolution:   Check the argument.\n"
    },
    {
      "commit": "2f1e51a43c5e0b7560396898bdb7384550f05481",
      "tree": "ce746758bc03798633db3c4d281cae5bcab5a533",
      "parents": [
        "aff5c3a5304d85b53b00fd67418d53056b663ba9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 13 03:58:09 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Dec 13 03:58:09 2014 +0100"
      },
      "message": "updated for version 7.4.546\nProblem:    Repeated use of vim_snprintf() with a number.\nSolution:   Move these vim_snprintf() calls into a function.\n"
    },
    {
      "commit": "b96a7f325c9047d6a65424d40e493d3e0eff26b5",
      "tree": "e1ede3b804b7e235b967d5a607eaa2d4a916fc63",
      "parents": [
        "baf0344ed7031369a0f355beb062eb4c34e35261"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 27 16:22:48 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Nov 27 16:22:48 2014 +0100"
      },
      "message": "updated for version 7.4.530\nProblem:    Many commands take a count or range that is not using line\n            numbers.\nSolution:   For each command specify what kind of count it uses.  For windows,\n            buffers and arguments have \"$\" and \".\" have a relevant meaning.\n            (Marcin Szamotulski)\n"
    },
    {
      "commit": "df46f6f07f90c0014352ff05aecb8caf61e7cfa0",
      "tree": "8f5f3e1de8295777622709d955c0292c6eaab695",
      "parents": [
        "a365091dbb94e0daea5ea58d1facb1102868cca5"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 19 13:40:08 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Nov 19 13:40:08 2014 +0100"
      },
      "message": "updated for version 7.4.518\nProblem:    Using status line height in width computations.\nSolution:   Use one instead. (Hirohito Higashi)\n"
    },
    {
      "commit": "482a2b5c9d53fa7ae44a64bbbfa0bae868cbe4a0",
      "tree": "2111ced8150aaec28ad6434cec217d9df294f52f",
      "parents": [
        "958636c40619a9f8c3d10e9f76a7f634dd11d13b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Oct 21 20:57:15 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Oct 21 20:57:15 2014 +0200"
      },
      "message": "updated for version 7.4.487\nProblem:    \":sign jump\" may use another window even though the file is\n            already edited in the current window.\nSolution:   First check if the file is in the current window. (James McCoy)\n"
    },
    {
      "commit": "56095e1cebcdf7a4607c147e485f8a2e12578848",
      "tree": "4cafc1a8a5396d1d874ad8a40e140c6301aa48bc",
      "parents": [
        "21d89b610fe2d952a500eaf34cda03c276ef6db6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 09 10:44:37 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Oct 09 10:44:37 2014 +0200"
      },
      "message": "updated for version 7.4.466\nProblem:    CTRL-W } does not open preview window. (Erik Falor)\nSolution:   Don\u0027t set g_do_tagpreview for CTRL-W }.\n"
    },
    {
      "commit": "da014b94417a6e270787704d24c2cd735bc83e38",
      "tree": "87a7fd7cf031c5cc481c87ad83902ad7cd352800",
      "parents": [
        "cddc91ccb4cc0989fa0169a343289873a6d2d651"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 24 13:26:44 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 24 13:26:44 2014 +0200"
      },
      "message": "updated for version 7.4.460\nProblem:    Can\u0027t build without the quickfix feature. (Erik Falor)\nSolution:   Add a #ifdef.\n"
    },
    {
      "commit": "d355c50a2a07eaec87729d405553e15e5e680ca0",
      "tree": "4ffc3252b44b1a2f28ac142f4ffd8df80a56aa0a",
      "parents": [
        "91e15e13da0ec7825111133f0342288a47368d6e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 23 13:48:43 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Sep 23 13:48:43 2014 +0200"
      },
      "message": "updated for version 7.4.454\nProblem:    When using a Visual selection of multiple words and doing CTRL-W_]\n            it jumps to the tag matching the word under the cursor, not the\n            selected text.  (Patrick hemmer)\nSolution:   Do not reset Visual mode. (idea by Christian Brabandt)\n"
    },
    {
      "commit": "5d2bae8b1c2bb8059010ea604e092de9cf3c1baf",
      "tree": "4e08dc4660c82fa64e4da92e50e7e99698119d25",
      "parents": [
        "714db3bb819bb7f9f52270f2352b274bba3a9ff4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 19 14:26:36 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Sep 19 14:26:36 2014 +0200"
      },
      "message": "updated for version 7.4.446\nProblem:    In some situations, when setting up an environment to trigger an\n            autocommand, the environment is not properly restored.\nSolution:   Check the return value of switch_win() and call restore_win()\n            always.  (Daniel Hahler)\n"
    },
    {
      "commit": "23fb7a995534f45a497761461d487e38cc1067f7",
      "tree": "a4a90fb0edf1243cbd55b9e9f8fd222b30c730a3",
      "parents": [
        "278eb5820dbc486123df4b60cc116c7212f14a01"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 30 14:05:00 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 30 14:05:00 2014 +0200"
      },
      "message": "updated for version 7.4.386\nProblem:    When splitting a window the changelist position is wrong.\nSolution:   Copy the changelist position. (Jacob Niehus)\n"
    },
    {
      "commit": "54368f274245cef549f0c479492ac8664fede0dd",
      "tree": "6cd710b813e7b52838e200a80d0779a994abc3b9",
      "parents": [
        "674fffe855dd7145e1216246d76b13464b7057f7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 23 15:21:20 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 23 15:21:20 2014 +0200"
      },
      "message": "updated for version 7.4.377\nProblem:    When \u0027equalalways\u0027 is set a split may report \"no room\" even though\n            there is plenty of room.\nSolution:   Compute the available room properly. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "a04854932ec96ab48498fd4a5e8b5f4fd4df14cf",
      "tree": "323bbd6014c52c9ded96a71f62b904e817b2e657",
      "parents": [
        "1f538355db5c344fd55c32dcb45834649536eea1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 23:39:54 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 23:39:54 2014 +0200"
      },
      "message": "updated for version 7.4.373\nProblem:    Compiler warning for unused argument and unused variable.\nSolution:   Add UNUSED.  Move variable inside #ifdef.\n"
    },
    {
      "commit": "1f538355db5c344fd55c32dcb45834649536eea1",
      "tree": "b91b50b9b06d4833e413b45a0325fbee7c5941c9",
      "parents": [
        "5524aebf160ac3acef6daf5485c9adc3b5aca92f"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 18:19:27 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 18:19:27 2014 +0200"
      },
      "message": "updated for version 7.4.372\nProblem:    When \u0027winminheight\u0027 is zero there might not be one line for the\n            current window.\nSolution:   Change the size computations. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "4e036c9e6f61ac9fca7be561da0a04d6fc36f9b8",
      "tree": "db63d06f6b63fc178d25da66b5b40a1f40682116",
      "parents": [
        "b643e777824c76034cbd8e77f603a0b98f2b26fb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 16:30:28 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 16:30:28 2014 +0200"
      },
      "message": "updated for version 7.4.369\nProblem:    Using freed memory when exiting while compiled with EXITFREE.\nSolution:   Set curwin to NULL and check for that. (Dominique Pelle)\n"
    },
    {
      "commit": "b643e777824c76034cbd8e77f603a0b98f2b26fb",
      "tree": "b0b50521d83fe9bdf31513f21fb6d6dab326071c",
      "parents": [
        "f1924a9d8c6b0bad30b5ac7aabb853150d4e6e5b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 15:18:26 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 15:18:26 2014 +0200"
      },
      "message": "updated for version 7.4.368\nProblem:    Restoring the window sizes after closing the command line window\n            doesn\u0027t work properly if there are nested splits.\nSolution:   Restore the sizes twice. (Hirohito Higashi)\n"
    },
    {
      "commit": "b4d213551848414c29eb8d84394c1297a080e7a0",
      "tree": "28ae614e9d4e96fd8676c1d123af10a392b57ad9",
      "parents": [
        "db6ea063352ec1c88c7bc0839fa2bf75bae56cf0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 14:16:46 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 16 14:16:46 2014 +0200"
      },
      "message": "updated for version 7.4.365\nProblem:    Crash when using \":botright split\" when there isn\u0027t much space.\nSolution:   Add a check for the minimum width/height. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "dab70c63e16687b2cb784a3a9eecdbea6ecd7065",
      "tree": "d2e22231a6cd47939427e20f9f914f5a6985d219",
      "parents": [
        "e7eb789ef0d2dadf5824a0c6fbd452b1feb272e2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 02 17:16:58 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 02 17:16:58 2014 +0200"
      },
      "message": "updated for version 7.4.349\nProblem:    When there are matches to highlight the whole window is redrawn,\n            which is slow.\nSolution:   Only redraw everything when lines were inserted or deleted.\n            Reset b_mod_xlines when needed.  (Alexey Radkov)\n"
    },
    {
      "commit": "b6da44ae82f93d036ffb2ba37a009119688d9971",
      "tree": "dea583963d0aebcd8cc84075f08787dab3cb22a9",
      "parents": [
        "41d75239863d4b7a4142fc68cfa5d3a74a18d935"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 25 18:15:22 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 25 18:15:22 2014 +0200"
      },
      "message": "updated for version 7.4.344\nProblem:    Unessecary initializations and other things related to\n            matchaddpos().\nSolution:   Code cleanup. (Alexey Radkov)\n"
    },
    {
      "commit": "41d75239863d4b7a4142fc68cfa5d3a74a18d935",
      "tree": "fb23ca67937d14eefe2ab39cb2629f77a59494b3",
      "parents": [
        "db5ffaab5a4755981ee7eff2f044b533ce3042a9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 25 17:58:11 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 25 17:58:11 2014 +0200"
      },
      "message": "updated for version 7.4.343\nProblem:    matchdelete() does not always update the right lines.\nSolution:   Fix off-by-one error.  (Ozaki Kiichi)\n"
    },
    {
      "commit": "deae0f25663bdcd30b7fd8eb440ab0d34ee7ed45",
      "tree": "2b7d5ed4de901fc43b3aad9989860d7764498b48",
      "parents": [
        "de993ea629c532686c3d888246609d2b0c1880b7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 18 21:20:11 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 18 21:20:11 2014 +0200"
      },
      "message": "updated for version 7.4.334\nProblem:    Unitialized variables, causing some problems.\nSolution:   Initialize the variables. (Dominique Pelle)\n"
    },
    {
      "commit": "b3414595c713ca161f082776f89417faddec7d2d",
      "tree": "5f03f600e04a2455ce84033c49db30b680d571c6",
      "parents": [
        "ec1561cac59006213dd5405d164a94dc7d002806"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 17 17:48:32 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 17 17:48:32 2014 +0200"
      },
      "message": "updated for version 7.4.330\nProblem:    Using a regexp pattern to highlight a specific position can be\n            slow.\nSolution:   Add matchaddpos() to highlight specific positions efficiently.\n            (Alexey Radkov)\n"
    },
    {
      "commit": "ec1561cac59006213dd5405d164a94dc7d002806",
      "tree": "4484b8f4ea4c5c3368fb98c77296b0b0d4c47407",
      "parents": [
        "7a54a90744529ab4d3291fa5cdf7656184b8469c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 17 13:52:40 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jun 17 13:52:40 2014 +0200"
      },
      "message": "updated for version 7.4.329\nProblem:    When moving the cursor and then switching to another window the\n            previous window isn\u0027t scrolled. (Yukihiro Nakadaira)\nSolution:   Call update_topline() before leaving the window. (Christian\n            Brabandt)\n"
    },
    {
      "commit": "f0224c9f085849f4da87faa878279a641055fe83",
      "tree": "45b5c555edee090af9a41df797798fd19233ed20",
      "parents": [
        "0ae36a5c8542d51dd0d70035e997d96e4a20dcbb"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 14 12:53:33 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 14 12:53:33 2014 +0200"
      },
      "message": "updated for version 7.4.326\nProblem:    Can\u0027t build Tiny version. (Elimar Riesebieter)\nSolution:   Add #ifdef.\n"
    },
    {
      "commit": "0ae36a5c8542d51dd0d70035e997d96e4a20dcbb",
      "tree": "c4f31250dff0034cc5fd456ca9a1e6459c76b9f9",
      "parents": [
        "822ff866bd6558be993d4455a22454ae53db0eca"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 13 20:08:45 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 13 20:08:45 2014 +0200"
      },
      "message": "updated for version 7.4.325\nProblem:    When starting the gui and changing the window size the status line\n            may not be drawn correctly.\nSolution:   Catch new_win_height() being called recursively. (Christian\n            Brabandt)\n"
    },
    {
      "commit": "3be8585661f8b0a9b94e9bc1db6ebfa097c3270f",
      "tree": "7dde9056432ebada1a3ce31f629eaf4f76a0d7fa",
      "parents": [
        "980e58f7b324980d40ce690506897d138e5e2b70"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jun 12 14:01:31 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jun 12 14:01:31 2014 +0200"
      },
      "message": "updated for version 7.4.320\nProblem:    Possible crash when an BufLeave autocommand deletes the buffer.\nSolution:   Check for the window pointer being valid.  Postpone freeing the\n            window until autocommands are done. (Yasuhiro Matsumoto)\n"
    },
    {
      "commit": "06e4a6df0a31138b50b81b6931d6f39f207cd456",
      "tree": "c31dbd5e8f9f74001cb8d389a0136364fc84d689",
      "parents": [
        "7116aa0f7d4c3f50f6898798c3047f5232aabe4a"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jun 12 11:49:46 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jun 12 11:49:46 2014 +0200"
      },
      "message": "updated for version 7.4.317\nProblem:    Crash when starting gvim.  Issue 230.\nSolution:   Check for a pointer to be NULL. (Christian Brabandt)\n"
    },
    {
      "commit": "dd0402a759488fba55aef4350da521e7b65e8855",
      "tree": "298e627aea0b6c87541db47b05d9506102cd34dc",
      "parents": [
        "846a2ff5f3a006fb612d1ece1962cb75ca06d0fe"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 28 13:43:04 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 28 13:43:04 2014 +0200"
      },
      "message": "updated for version 7.4.309\nProblem:    When increasing the size of the lower window, the upper window\n            jumps back to the top. (Ron Aaron)\nSolution:   Change setting the topline. (Nobuhiro Takasaki)\n"
    },
    {
      "commit": "b42970535c205baede141c8be2fab0f8cc4e16d9",
      "tree": "6ab0ef288239f2a711e81cbfba4347676abb2074",
      "parents": [
        "7b129a5ac475a22a363e348be045932233c6d386"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 22 15:17:29 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu May 22 15:17:29 2014 +0200"
      },
      "message": "updated for version 7.4.301\nProblem:    Still a scrolling problem when loading a session file.\nSolution:   Fix off-by-one mistake. (Nobuhiro Takasaki)\n"
    },
    {
      "commit": "56b3bf89aa2021d20afabd8ec7b513beb1b8df25",
      "tree": "a7f09a2544e11b0f13f474cca9526eefbade718f",
      "parents": [
        "1b1063af58b015b7827168f8fa2631efb60c252b"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 07 20:25:35 2014 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 07 20:25:35 2014 +0200"
      },
      "message": "updated for version 7.4.280\nProblem:    When using a session file the relative position of the cursor is\n            not restored if there is another tab. (Nobuhiro Takasaki)\nSolution:   Update w_wrow before calculating the fraction.\n"
    },
    {
      "commit": "f7ff6e85e8a4e84cff023f5db4b66ef85986605a",
      "tree": "813913a9c1d1418b5b85e3a4bc414dbeb2b3f6a3",
      "parents": [
        "a68783751647e3243ca6f22df62907efbdbccb02"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 23 15:13:05 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Mar 23 15:13:05 2014 +0100"
      },
      "message": "updated for version 7.4.212\nProblem:    Now that the +visual feature is always enabled the #ifdefs for it\n            are not useful.\nSolution:   Remove the checks for FEAT_VISUAL.\n"
    },
    {
      "commit": "bd2dc34774c3753b2953a3bffaf35d5793d2575c",
      "tree": "af3afe045074e0d5122566a7f61a1d7e1956317d",
      "parents": [
        "4ea924e0a567c5026a25fba2b02dd6eaf9efcb89"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 10 15:53:13 2014 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jan 10 15:53:13 2014 +0100"
      },
      "message": "updated for version 7.4.139\nProblem:    Crash when using :cd in autocommand. (François Ingelrest)\nSolution:   Set w_localdir to NULL after freeing it. (Dominique Pelle)\n"
    },
    {
      "commit": "c93df6b0752cf1d11b0c880748821f881c1c4d08",
      "tree": "cdcab747169425a0bbed744d689fb1a40f0a98b0",
      "parents": [
        "ebefd997bbc2ec79fd33145fd88126cfd1b87fa3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 14 17:11:20 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 14 17:11:20 2013 +0200"
      },
      "message": "updated for version 7.4.004\nProblem:    When closing a window fails \":bwipe\" may hang.\nSolution:   Let win_close() return FAIL and break out of the loop.\n"
    },
    {
      "commit": "ff18df03c3b714caca4f76e50defcb29eb523e15",
      "tree": "4039c827e9973117ea6f8c9c4a5007ae28f2a21f",
      "parents": [
        "af003f638415d20ee72cf137e47da38029c627db"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 24 17:51:57 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 24 17:51:57 2013 +0200"
      },
      "message": "updated for version 7.4a.044\nProblem:    Test 96 sometimes fails.\nSolution:   Clear window from b_wininfo in win_free().  (Suggestion by\n            Yukihiro Nakadaira)\n"
    },
    {
      "commit": "2b90ed294e3e3ce9d02d237317deffe296abf798",
      "tree": "bd01cd5b7d22f732b4c1cfe5646d90203fc86f11",
      "parents": [
        "ad875fb7fff85d313fa35acde1afaec998d347d7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 24 16:02:36 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 24 16:02:36 2013 +0200"
      },
      "message": "updated for version 7.4a.042\nProblem:    Crash when BufUnload autocommands close all buffers. (Andrew\n            Pimlott)\nSolution:   Set curwin-\u003ew_buffer to curbuf to avoid NULL.\n"
    },
    {
      "commit": "95064ece73a72fce696607ccc8896bc9e52af718",
      "tree": "505ada105acb2691d3cc9f94c7edb970838825b8",
      "parents": [
        "33ca6bf240981363f3dfb259e3715ce4ee3302b3"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 17 17:15:25 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 17 17:15:25 2013 +0200"
      },
      "message": "updated for version 7.4a.027\nProblem:    When Python adds lines to another buffer the cursor position is\n            wrong, it might be below the last line causing ml_get errors.\n            (Vlad Irnov)\nSolution:   Temporarily change the current window, so that marks are corrected\n            properly.\n"
    },
    {
      "commit": "5e6d5ca16c8d35abd28fdeb7f2600ce5e8aeacc1",
      "tree": "052f7ed3298e1bb0bd69ad79ca405623e60fd26d",
      "parents": [
        "e1fc4e2f0f4afbdbff97025dc1e7b68da181d796"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 03 14:01:56 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jul 03 14:01:56 2013 +0200"
      },
      "message": "updated for version 7.3.1292\nProblem:    Possibly using invalid pointer when searcing for window. (Raichoo)\nSolution:   Use \"firstwin\" instead of \"tp_firstwin\" for current tab.\n"
    },
    {
      "commit": "f0327f67c778f46cdf19d793c013f024f01ea818",
      "tree": "6972cbe3798715dba358aa3e1f15a91edee766a3",
      "parents": [
        "22dbc77ef17e67f1c909d76b256425db793eb792"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 28 20:16:55 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jun 28 20:16:55 2013 +0200"
      },
      "message": "updated for version 7.3.1256\nProblem:    Can\u0027t build without eval or autocmd feature.\nSolution:   Add #ifdefs.\n"
    },
    {
      "commit": "b893ac2098e2b75d3138f6e91289892c1ef4b340",
      "tree": "49e34307848a942affae26571889e5fb57963a27",
      "parents": [
        "31c31679e22618fe03f634a356c15f8d631c5372"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 26 14:04:47 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 26 14:04:47 2013 +0200"
      },
      "message": "updated for version 7.3.1246\nProblem:    When setting \u0027winfixheight\u0027 and resizing the window causes the\n            window layout to be wrong.\nSolution:   Add frame_check_height() and frame_check_width() (Yukihiro\n            Nakadaira)\n"
    },
    {
      "commit": "8c0e322f18c11f4cc2fb6ee2525d47374044a706",
      "tree": "a950bc417b81cfd118d7aa119fe0e5dd6ae75c9a",
      "parents": [
        "6949eea7cc79ef35921f82411bf8439a079ca424"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 16 17:32:40 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 16 17:32:40 2013 +0200"
      },
      "message": "updated for version 7.3.1213\nProblem:    Can\u0027t build with small features and Python.\nSolution:   Adjust #ifdefs.\n"
    },
    {
      "commit": "d69497413f878fbe6db1cdae45171127281acabd",
      "tree": "33469847c25fcdd189f35a79ca84cbc3f6f7bade",
      "parents": [
        "4ce239b0b167cbbce1fbbaeced2133bcd69ee90e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 16 14:18:28 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun Jun 16 14:18:28 2013 +0200"
      },
      "message": "updated for version 7.3.1204\nProblem:    Calling gettabwinvar() in \u0027tabline\u0027 cancels Visual mode. (Hirohito\n            Higashi)\nSolution:   Don\u0027t always use goto_tabpage_tp().\n"
    },
    {
      "commit": "473de61b0409f8f8c86585733f099f882122b280",
      "tree": "0c2b031a29a283c70d63368c38031517572d954c",
      "parents": [
        "cd9c46265e4a12cf716187bc8188c7399797f806"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 08 18:19:48 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat Jun 08 18:19:48 2013 +0200"
      },
      "message": "updated for version 7.3.1149\nProblem:    New regexp engine: Matching plain text could be faster.\nSolution:   Detect a plain text match and handle it specifically.  Add\n            vim_regfree().\n"
    },
    {
      "commit": "6fa41fb3746e5ab2f793de713879afc9b1e25647",
      "tree": "2f3d6bc6c68a71bada269a01028b41e741d84875",
      "parents": [
        "7533fddd09bc9fe9d21c481cbe406c7f86119578"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 18 20:55:35 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sat May 18 20:55:35 2013 +0200"
      },
      "message": "updated for version 7.3.969\nProblem:    Can\u0027t built with Python 3 and without Python 2.\nSolution:   Adjust #ifdef. (Xavier de Gaye)\n"
    },
    {
      "commit": "105bc355a6713b5c09b52776bf8f92a15a81f49c",
      "tree": "5b87ec43fc4b9c4c59cfe40a8167f117274a0b6d",
      "parents": [
        "55b8ad3dabc16451f0ae59a7ae8ab9edb67f84e6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:03:57 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 17 16:03:57 2013 +0200"
      },
      "message": "updated for version 7.3.963\nProblem:    Setting curbuf without curwin causes trouble.\nSolution:   Add switch_buffer() and restore_buffer().  Block autocommands to\n            avoid trouble.\n"
    },
    {
      "commit": "07729b25bf85f41822eae4978eb2097f31ac09d7",
      "tree": "1394145ad0f7dae9da60c83cb922dd2cf91feb13",
      "parents": [
        "54e8f005815342b9d1f5e92a766eb4783f5ad414"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 23:13:10 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 23:13:10 2013 +0200"
      },
      "message": "updated for version 7.3.960\nProblem:    Compiler warning for unused variable.\nSolution:   Put declaration in #ifdef.\n"
    },
    {
      "commit": "5e538ecd5e68b90f630be7bb177ab64e1285e40b",
      "tree": "a2de7e503d39d22f9edb40253bb8cfb15d6f9a8e",
      "parents": [
        "03db85b398746a252345ed8a7da69f0f2591e932"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:12:29 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed May 15 15:12:29 2013 +0200"
      },
      "message": "updated for version 7.3.949\nProblem:    Python: no easy access to tabpages.\nSolution:   Add vim.tabpages and vim.current.tabpage. (ZyX)\n"
    },
    {
      "commit": "6d21645f463d6b6f73cf8b9baf9afe6675abf189",
      "tree": "a6cf551d6b649cfe69f0cde0f0fe234538eee5c2",
      "parents": [
        "971db4679940fd2f06733e8a1513215f9e1943a4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 19:00:41 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Sun May 12 19:00:41 2013 +0200"
      },
      "message": "updated for version 7.3.938\nProblem:    Python: not easy to get to window number.\nSolution:   Add vim.window.number. (ZyX)\n"
    },
    {
      "commit": "49e649fc2eb196b2476a3bc2947c7a89e0f69c2f",
      "tree": "64955601e26e5749b5d1f3217746d899424778e5",
      "parents": [
        "84a05acc8c341c2be383198496764992ae971a46"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:50:35 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:50:35 2013 +0200"
      },
      "message": "updated for version 7.3.926\nProblem:    Autocommands are triggered by setwinvar() et al. Missing BufEnter\n            on :tabclose. Duplicate WinEnter on :tabclose. Wrong order of\n            events for :tablose and :tabnew.\nSolution:   Fix these autocommand events. (Zyx)\n"
    },
    {
      "commit": "84a05acc8c341c2be383198496764992ae971a46",
      "tree": "061887e2e1327a2d0c688cba306b8ec66b3f8477",
      "parents": [
        "84e0f6ca9adcbdca254060713878ebc29faaaa65"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:24:17 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon May 06 04:24:17 2013 +0200"
      },
      "message": "updated for version 7.3.925\nProblem:    Typos in source files.\nSolution:   Fix the typos. (Ken Takata)\n"
    },
    {
      "commit": "4c7e9db0d6502054eafafcc9aea70ea71c45f551",
      "tree": "657b5019203bc6813c464b4f65aea8aa592d75d5",
      "parents": [
        "687a29c5e26b2fa69f3b2cb3504d1fd2f090daf7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 15 15:55:19 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 15 15:55:19 2013 +0200"
      },
      "message": "updated for version 7.3.902\nProblem:    When deleting last buffer in other tab the tabline is not updated.\nSolution:   Set the redraw_tabline flag. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "429fa85392a934b34ba7b394558900cbb8786454",
      "tree": "2efc8dbb0c4727471c970f4c96ea37a9e9ba67e6",
      "parents": [
        "07219f911c86a50840050282baafe896284a5588"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 15 12:27:36 2013 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Apr 15 12:27:36 2013 +0200"
      },
      "message": "updated for version 7.3.893\nProblem:    Crash when using b:, w: or t: after closing the buffer, window or\n            tabpage.\nSolution:   Allocate the dictionary instead of having it part of the\n            buffer/window/tabpage struct. (Yukihiro Nakadaira)\n"
    },
    {
      "commit": "530e7dfafd7e951ac36e39c87bf72ebdb4caa428",
      "tree": "023e406deb48bb5b1a388002db7b404a3972ffd7",
      "parents": [
        "b6a76ffc4cc79163c88b734e0a803385321b3ca6"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 06 13:38:02 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 06 13:38:02 2013 +0100"
      },
      "message": "updated for version 7.3.801\nProblem:    \":window set nu?\" displays the cursor line. (Nazri Ramliy)\nSolution:   Do not update the cursor line when conceallevel is zero or the\n            screen has scrolled. (partly by Christian Brabandt)\n"
    },
    {
      "commit": "802418d5eb5c98dcbe53390d1eceba92dd097aa4",
      "tree": "7d7409b452c19f8b81df8480f135836ec41d1502",
      "parents": [
        "c4fba6f8811d8f205f5c9772d4797691e615c6a2"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 17 14:00:11 2013 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jan 17 14:00:11 2013 +0100"
      },
      "message": "updated for version 7.3.765\nProblem:    Segfault when doing \"cclose\" on BufUnload in a python function.\n            (Sean Reifschneider)\nSolution:   Skip window with NULL buffer. (Christian Brabandt)\n"
    },
    {
      "commit": "8f913993666b154b233ab9923845fa165d9b3260",
      "tree": "9e11635cc29e0e2ce8620efd5dba1a043518a924",
      "parents": [
        "002a4edc5b66c90245ca3eebc564635ed0af1ff1"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 29 15:50:26 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Aug 29 15:50:26 2012 +0200"
      },
      "message": "updated for version 7.3.642\nProblem:    Segfault with specific autocommands.  Was OK after 7.3.449 and\n            before 7.3.545. (Richard Brown)\nSolution:   Pass TRUE for abort_if_last in the call to close_buffer().\n            (Christian Brabandt)\n"
    },
    {
      "commit": "6763c140d656703814d9a268c8492762aee69469",
      "tree": "4b3057d4acf252fe2ffc054a49e62ceaf49f1ff0",
      "parents": [
        "049d8e79cf49a38c1243f4ec33e48a9bd89b5e4c"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 19 18:05:44 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Thu Jul 19 18:05:44 2012 +0200"
      },
      "message": "updated for version 7.3.608\nProblem:    winrestview() does not always restore the view correctly.\nSolution:   Call win_new_height() and win_new_width(). (Lech Lorens)\n"
    },
    {
      "commit": "bdb620560b3199828f9852e9c9453d56e951a5f9",
      "tree": "3901feff854f6353d8f82127f936289ba5a73cf6",
      "parents": [
        "c2ece10274c01c50534bfdcd4d8a03229356101d"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 16 17:31:53 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Mon Jul 16 17:31:53 2012 +0200"
      },
      "message": "updated for version 7.3.603\nProblem:    It is possible to add replace builtin functions by calling\n            extend() on g:.\nSolution:   Add a flag to a dict to indicate it is a scope.  Check for\n            existing functions. (ZyX)\n"
    },
    {
      "commit": "8cb8dca2f0683a29a2cb441a8cd995d25c29d79c",
      "tree": "5f470668d9ab29bac417a4d2083ebb8bb3cdb008",
      "parents": [
        "0306ac33a53114113825242d22d103ee0e3504f9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 06 18:27:39 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 06 18:27:39 2012 +0200"
      },
      "message": "updated for version 7.3.591\nProblem:    Can only move to a tab by absolute number.\nSolution:   Move a number of tabs to the left or the right. (Lech Lorens)\n"
    },
    {
      "commit": "756287da38076a25fda0ecb75254ef75afb9c931",
      "tree": "57f293c716b62e4c394d2229fe4896f381658106",
      "parents": [
        "e25865a7f32d9e6feab0b6b61b76f074ee16f0c9"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 06 16:39:47 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Jul 06 16:39:47 2012 +0200"
      },
      "message": "updated for version 7.3.588\nProblem:    Crash on NULL pointer.\nSolution:   Fix the immediate problem by checking for NULL. (Lech Lorens)\n"
    },
    {
      "commit": "795ec43112af40e02ddc8fcc1d0a7800a33f2a6e",
      "tree": "b20cad9cf02f22c1b07a23484b67f26124fd8ebe",
      "parents": [
        "5641f38d41068e92c2ba15cb6359f8d80188f6cf"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 13 18:15:19 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 13 18:15:19 2012 +0200"
      },
      "message": "updated for version 7.3.554\nProblem:    Compiler warning for unused argument.\nSolution:   Add UNUSED.\n"
    },
    {
      "commit": "a8596c47724b97822924f5ffe5d50476de31ff4b",
      "tree": "77bfb95357a498955a7e8b2c8662b5a1b5b76c0d",
      "parents": [
        "e04a48f20413f3f926d26394fad6431795348af7"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 13 14:28:20 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 13 14:28:20 2012 +0200"
      },
      "message": "updated for version 7.3.551\nProblem:    When using :tablose a TabEnter autocommand is triggered too early.\n            (Karthick)\nSolution:   Don\u0027t trigger *Enter autocommands before closing the tab.\n            (Christian Brabandt)\n"
    },
    {
      "commit": "362ce4804819f39d5a4a21923577f3ccc59c8ad5",
      "tree": "7c3d79ed0e4334faa016c4ecaa97b3a00183b608",
      "parents": [
        "3b53dfb3b0743af7d6ae381a766e1bb2018fd01e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 19:02:45 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Jun 06 19:02:45 2012 +0200"
      },
      "message": "updated for version 7.3.545\nProblem:    When closing a window or buffer autocommands may close it too,\n            causing problems for where the autocommand was invoked from.\nSolution:   Add the w_closing and b_closing flags.  When set disallow \":q\" and\n            \":close\" to prevent recursive closing.\n"
    },
    {
      "commit": "bef1c36ab66a387dbcc87c424030e0cdcb728e69",
      "tree": "1f1f3ce99e59ed95144d0b13a7c081e40486bb5d",
      "parents": [
        "936347b6bf37918969b37faa50f0854ac4e4ace4"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 25 12:39:00 2012 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri May 25 12:39:00 2012 +0200"
      },
      "message": "updated for version 7.3.528\nProblem:    Crash when closing last window in a tab. (Alex Efros)\nSolution:   Use common code in close_last_window_tabpage(). (Christian\n            Brabandt)\n"
    },
    {
      "commit": "5ad15df9ce49f0b7adeac2c8387319d6f309bd5f",
      "tree": "5dfef41cb17f54b2e285ec009008b14b12f3b0d2",
      "parents": [
        "1c0b03e857c3f0eb9201f1046150a63866ebe49e"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 16 19:07:58 2012 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Mar 16 19:07:58 2012 +0100"
      },
      "message": "updated for version 7.3.472\nProblem:    Crash when using \":redraw\" in a BufEnter autocommand and\n            switching to another tab. (驼峰)\nSolution:   Move triggering the the autocommands to after correcting the\n            option values. Also check the row value to be out of bounds.\n            (Christian Brabandt, Sergey Khorev)\n"
    },
    {
      "commit": "42ec656524db254001caee8feb58d26f67b52fbe",
      "tree": "1ca4411bcc3addd4cd05a3ed629193c6ca04409c",
      "parents": [
        "fb7df7be2f7c80428a3379010ca701689c85aa12"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 22 14:58:37 2012 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Feb 22 14:58:37 2012 +0100"
      },
      "message": "updated for version 7.3.449\nProblem:    Crash when a BufWinLeave autocommand closes the only other window.\n            (Daniel Hunt)\nSolution:   Abort closing a buffer when it becomes the only one.\n"
    },
    {
      "commit": "70b2a56d5a8fd54f3d0707fa77dea86a4bd8195f",
      "tree": "2144b21b49d79de16665fb585daf1e9cf66e85c0",
      "parents": [
        "1f5965b3c4d2b29e167a5dfecdf0ec59fe4c45c0"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 10 22:26:17 2012 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Tue Jan 10 22:26:17 2012 +0100"
      },
      "message": "updated for version 7.3.400\nProblem:    Compiler warnings for shadowed variables.\nSolution:   Remove or rename the variables.\n"
    },
    {
      "commit": "fc57380c3f1370c26b8c1eddcf9bccbad58e11aa",
      "tree": "83291ac1aab0c1172618691576dcb4ed3a46f1b4",
      "parents": [
        "5d6f75e17e783b4ce6702b243cf8fda107592e87"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 30 15:01:59 2011 +0100"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Fri Dec 30 15:01:59 2011 +0100"
      },
      "message": "updated for version 7.3.390\nProblem:    Using NULL buffer pointer in a window.\nSolution:   Check for w_buffer being NULL in more places. (Bjorn Winckler)\n"
    },
    {
      "commit": "a971b82b160aca28cff7e318d4553df5349b5103",
      "tree": "3fb27e26538bc4ea9cb3671fd763dce2e6183f00",
      "parents": [
        "52af96527c914599334e3c2543ebb5ba1e37bbbe"
      ],
      "author": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 14 14:43:25 2011 +0200"
      },
      "committer": {
        "name": "Bram Moolenaar",
        "email": "Bram@vim.org",
        "time": "Wed Sep 14 14:43:25 2011 +0200"
      },
      "message": "updated for version 7.3.306\nProblem:    When closing a window there is a chance that deleting a scrollbar\n            triggers a GUI resize, which uses the window while it is not in a\n            valid state.\nSolution:   Set the buffer pointer to NULL to be able to detect the invalid\n            situation.  Fix a few places that used the buffer pointer\n            incorrectly.\n"
    }
  ],
  "next": "13d831ff0c8879bdf59e6de35a106ccb9b4766da"
}
