diff --git a/cfg/prscfg.c b/cfg/prscfg.c
index cc4ef3a14f97dd2cb703b62609e3f2254046fd89..afc56abf0ea672946eb699087214830df8a8de8a 100644
--- a/cfg/prscfg.c
+++ b/cfg/prscfg.c
@@ -1770,7 +1770,7 @@ YYSTYPE yylval;
 /* Line 1455 of yacc.c  */
 #line 173 "prscfg.y"
     {
-			OptDef	*str;
+			OptDef		*str;
 			NameAtom	*idx;
 
 			MakeAtom(idx, NULL);
@@ -1787,7 +1787,7 @@ YYSTYPE yylval;
 /* Line 1455 of yacc.c  */
 #line 184 "prscfg.y"
     {
-			OptDef	*str;
+			OptDef		*str;
 			NameAtom	*idx;
 
 			MakeAtom(idx, NULL);
@@ -2100,7 +2100,7 @@ compileName(OptDef	*def) {
 				return 1;
 
 			if (index >= 0) {
-				beginPtr->index = index;
+				endPtr->index = index;
 				index = -1;
 			}
 
diff --git a/third_party/khash.h b/third_party/khash.h
index 3ed8164aa961fcd01e4e1693f00f16045fc46702..e88c553385214a5a25ace2a373dd371014da7248 100644
--- a/third_party/khash.h
+++ b/third_party/khash.h
@@ -231,7 +231,8 @@ static const double __ac_HASH_UPPER = 0.77;
         { \
                 if (h && h->flags) { \
                         memset(h->flags, 0xaa, ((h->n_buckets>>4) + 1) * sizeof(uint32_t)); \
-                        h->avg_size = (h->avg_size * (double)h->clears_cnt + (double)h->size) / (double)(++h->clears_cnt); \
+                        h->avg_size = (h->avg_size * (double)h->clears_cnt + (double)h->size) / (double)(h->clears_cnt + 1); \
+			h->clears_cnt++; \
                         h->size = h->n_occupied = 0; \
                         if (h->resize_wat && (h->n_buckets > *(h->resize_wat))) \
                                 kh_resize_##name(h, *(h->resize_wat) - 1); \