# HG changeset patch # User Bram Moolenaar # Date 1423590118 -3600 # Node ID 4b1e3b3aa78abcdab840189d766f54ebdb2712fe # Parent 6bb932add4f4463228fc054f40aa1050043dfa61 updated for version 7.4.625 Problem: Possible NULL pointer dereference. Solution: Check for NULL before using it. (Mike Williams) diff --git a/src/if_py_both.h b/src/if_py_both.h --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -747,12 +747,14 @@ VimToPython(typval_T *our_tv, int depth, else if (our_tv->v_type == VAR_DICT) { - hashtab_T *ht = &our_tv->vval.v_dict->dv_hashtab; - long_u todo = ht->ht_used; + hashtab_T *ht; + long_u todo; hashitem_T *hi; dictitem_T *di; + if (our_tv->vval.v_dict == NULL) return NULL; + ht = &our_tv->vval.v_dict->dv_hashtab; if (!(ret = PyDict_New())) return NULL; @@ -763,6 +765,7 @@ VimToPython(typval_T *our_tv, int depth, return NULL; } + todo = ht->ht_used; for (hi = ht->ht_array; todo > 0; ++hi) { if (!HASHITEM_EMPTY(hi)) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 625, +/**/ 624, /**/ 623,