GitHub PushEvent at 2014-11-09 18:31:58
Repository: neovim
Actor: justinmk
Payload: {"shas":[["b6c1fae6a94d01024d30c24c32e99ec78b4b2517","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: cursor_shape.c: parse_shape_opt(): Garbage value: FP.\n\nProblem: Assigned value is garbage or undefined @ 187.\n         http://neovim.org/doc/reports/clang/report-7b7d61.html#EndPath.\n\nDiagnostic: False positive.\nRationale : `colonp`, must be `>= modep, or null` by `vim_strchr`\n            postcondition. At this point we also it's not null and it's\n            not equal to `modep`, by previous code. So, it must be\n            `> modep`.\nResolution: Assert `colonp > modep`.","Eliseo Martínez",true],["a32442db8559de722bee39f9614e9041c6f3782b","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: screen.c: redraw_asap(): Various (6): MI.\n\nProblems: Argument with 'nonnull' attribute passed null @ 277.\n          http://neovim.org/doc/reports/clang/report-9c3614.html#EndPath\n\n          Result of operation is garbage or undefined @ 281.\n          http://neovim.org/doc/reports/clang/report-45efbf.html#EndPath\n\n          Argument with 'nonnull' attribute passed null @ 306.\n          http://neovim.org/doc/reports/clang/report-ffb84f.html#EndPath\n\n          Result of operation is garbage or undefined @ 311.\n          http://neovim.org/doc/reports/clang/report-d04333.html#EndPath\n\n          Argument with 'nonnull' attribute passed null @ 315.\n          http://neovim.org/doc/reports/clang/report-786819.html#EndPath\n\n          Uninitialized argument value @ 328.\n          http://neovim.org/doc/reports/clang/report-2a5506.html#EndPath\n\nDiagnostic: Multithreading issues.\nRationale : All reported problems can only occur if accesed globals\n            change state while executing function, which could only\n            happen in a multithreaded environment.\nResolution: Use local variables.\n            Note that this change alters function semantics, as now\n            function only depends on global values at entry time.\n            This shouldn't be a problem, though, as new semantics should\n            be in fact better.","Eliseo Martínez",true],["1eb46675b7f755526f588c495fd4f4409f646a67","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: screen.c: win_line(): Dead initialization: HI.\n\nProblem: Dead initialization @ 3477.\n         http://neovim.org/doc/reports/clang/report-94b736.html#EndPath\n\nDiagnostic: Harmless issue.\nRationale : `len` is assigned a new value just some lines below. So,\n            this just seems something due to old-style variable\n            declarations.\nResolution: We could just remove initialization, but prefer moving\n            declaration down to point of initialization.","Eliseo Martínez",true],["04b4658978fd6e34d2c8e018bd58a9f74880d4be","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: screen.c: win_line(): Dead assigment: HI.\n\nProblem: Dead assigment.\n         http://neovim.org/doc/reports/clang/report-7362ba.html#EndPath\n\nDiagnostic: Harmless issue.\nRationale : `boguscols` is in fact unread by downstream code.\nResolution: Comment out. This is preferred here over just removing the\n            line because involved logic is complex, and future readers\n            of this code could find this extra knowledge useful to\n            understand what the code is doing.","Eliseo Martínez",true],["cc996e748db6d367aacea0fbe985f5568c5d9909","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: screen.c: showmode(): Dead assignment: HI.\n\nProblem: Dead assignment @ 7535.\n         http://neovim.org/doc/reports/clang/report-19a5cd.html#EndPath\n\nDiagnostic: Harmless issue.\nRationale : `length = msg_col;` is unconditionally executed after this.\nResolution: Remove assignment.","Eliseo Martínez",true],["bd7ee7d6a95d8d2fa1162c4169418e0ed13af7a9","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: screen.c: draw_tabline(): Dead assignment: HI.\n\nProblem: Dead assignment @ 7711.\n         http://neovim.org/doc/reports/clang/report-835eb6.html#EndPath\n\nDiagnostic: Harmless issue.\nRationale : `scol` is only used within `FOR_ALL_TABS` body, which\n            assigns another value to `scol` at the beginning of each\n            iteration. If `FOR_ALL_TABS` body would not execute (no\n            tabs) nothing harmful would happen, as code following\n            `FOR_ALL_TABS` doesn't use `scol`.\nResolution: Remove.","Eliseo Martínez",true],["0c135a2ff40d18ef5cfeb5a0233475ab49ae4973","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: ops.c: do_join(): Nonnull violation: FP.\n\nProblem: Argument with 'nonnull' attribute passed null @ 3540.\n         http://neovim.org/doc/reports/clang/report-fc14e0.html#EndPath.\n\nDiagnostic: False potitive.\nRationale : `count` should be >= 2 by function precondition.\nResolution: Assert precondition.","Eliseo Martínez",true],["9de544c785aa11a9edf380bc8aeaabad75357aa9","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: ops.c: cursor_pos_info(): Various (2): MI.\n\nProblems: Result of operation is garbage or undefined @ 5087.\n          http://neovim.org/doc/reports/clang/report-2e3118.html#EndPath\n\n          Result of operation is garbage or undefined @ 5149.\n\nDiagnostic: Multithreading issues.\nRationale : All reported problems can only occur if accesed globals\n            change state while executing function, which could only\n            happen in a multithreaded environment.\nResolution: Use local variables (copy globals on entry).\n            Note that this change alters function semantics, as now\n            function only depends on global values at entry time.\n            This shouldn't be a problem, though, as new semantics should\n            be in fact better.","Eliseo Martínez",true],["336aab5eef68a493dcd1ddc2dfe6405b6ee7a0a9","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: regexp.c: skip_regexp: Np dereference: FP.\n\nProblem: Derefence of null pointer @ 1208.\n         http://neovim.org/doc/reports/clang/report-24b5ca.html#Path10\n\nDiagnostic: False positive.\nRationale : Error is reported to happen  if after `if (*newp == NULL) {`\n            body, `*newp` continues being NULL, and false branch of\n            following `if (*newp != NULL)` is taken. Now, `vim_strsave`\n            cannot return NULL, so error cannot happen.\nResolution: Remove dead code (leftover since OOM refactors).","Eliseo Martínez",true],["22475b5ae80b5c08115677b9abc5c62258716c08","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: regexp.c: br_regcomp(): Np dereference: MI.\n\nProblem: Dereference of null pointer @ 1312.\n         http://neovim.org/doc/reports/clang/report-b1d09a.html#EndPath\n\nDiagnostic: Multithreading issue.\nRationale : Suggested error path contains two succesive calls to\n            `regnext(scan)`, first of which returning nonnull, the\n            second one returning null. This can only occur if global\n            `reg_toolong` accesed in `regnext()` changes between the\n            calls.\nResolution: Use local variable to cache first `regnext(scan)` result.\n            Note that this change alters function semantics, as now\n            function only issues one call instead of two, reusing the\n            result for the second time.\n            This shouldn't be a problem, though, as new semantics should\n            be in fact be better.","Eliseo Martínez",true],["997c0b3939f6da8c32672bb4e640ebc86b167be0","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: regexp.c: match_with_backref(): Nonnull violation: FP.\n\nProblem: Argument with 'nonnull' attribute passed null @ 5632.\n         http://neovim.org/doc/reports/clang/report-041a0e.html#EndPath.\n\nDiagnostic: False positive.\nRationale : `p = reg_getline(clnum)` above should not be null, because\n            `clnum` starts at `start_lnum` and only increments after\n            that.\nResolution: Assert p not null.","Eliseo Martínez",true],["0bda79a847112702adc07eea03105da26fdef89f","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: edit.c: ins_compl_next_buf(): Np dereference: FP.\n\nProblem    : Dereference of null pointer @ 3234.\nDiagnostic : False positive.\nRationale  : `wp` is local static, so maintains value between calls.\n             First time function is called for a given flag will have\n             `buf == curbuf`, implying `wp` initialization.\nResolution : Assert variable always having been initialized.","Eliseo Martínez",true],["da4c9447a4174dc9c9f15802e8e85cc6e4130f93","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: edit.c: ins_compl_get_exp(): Np dereference (2): FP.\n\nProblems   : Dereference of null pointer @ 3615.\n             Dereference of null pointer @ 3764.\nDiagnostic : False positives.\nRationale  : `ins_buf` is local static, so maintains value between calls.\n             This function will be called first when `compl_started` is\n             false, and in that case it initializes `ins_buf`. After\n             that, it can be called multiple times with `compl_started`\n             true, where `ins_buf` will be updated but not to null.\n             So, when arriving to both points, `ins_buf` should never be\n             null.\nResolution : Assert `ins_buf` at both points.","Eliseo Martínez",true],["cefc26ab63382ce7eb0db7b4b3704ef1f5c3b14b","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: edit.c: mb_replace_pop_ins(): Unitilialized arg: FP.\n\nProblem    : Uninitialized argument value @ 6296.\nDiagnostic : False positive.\nRationale  : Error occurs if n <= 1. That's not possible because\n             n >= 1 due to `MB_BYTE2LEN` postcondition and n != 1\n             because we are in the else branch.\nResolution : Assert n > 1.","Eliseo Martínez",true],["d0a0efaf32b3f42ee4ebd37ff065dea4385b998b","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: edit.c: replace_do_bs(): Garbage value: MI.\n\nProblem    : Assigned value is garbage or undefined @ 6359.\nDiagnostic : Multithreading issue.\nRationale  : Problem only occurs if global `State` changes while\n             function is executing.\nResolution : Use local copy of global in function.","Eliseo Martínez",true],["74817b546e6fd4c6ec6e201c1b461e6cfbf5a3be","5c31185ebcdcfd329397d45474b62c2634b88685@gmail.com","Fix warnings: edit.c: ins_bs(): Garbage result: MI.\n\nProblem    : Result of operation is garbage or undefined @ 7460.\nDiagnostic : Multithreading issue.\nRationale  : Problem occurs if any of globals `enc_utf8`, `p_deco is\n             modified while function is executing.\nResolution : Use local copy of globals.","Eliseo Martínez",true],["e9ac693bcde8e09e943b1e4a0e8a534c813501b8","224e6c20330e5fdd86c45c03a865a241c1b7bd00@gmail.com","Merge pull request #1389 from elmart/clang-analysis-fixes\n\nFix clang analysis warnings.","Justin M. Keyes",true]],"size":17,"ref":"refs/heads/master","head":"e9ac693bcde8e09e943b1e4a0e8a534c813501b8"}