patch 9.1.0195: memleak with ex_drop, NULL dereference

Problem:  memleak with ex_drop(), NULL dereference
          (zeertzjq)
Solution: revert back to ex_rewind(), use curbuf instead of buf

fixes: #14246
closes: #14251

Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 2527476..864f89d 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -5503,8 +5503,8 @@
 		buf_check_timestamp(curbuf, FALSE);
 		curbuf->b_p_ar = save_ar;
 	    }
-	    if (buf->b_ml.ml_flags & ML_EMPTY)
-		open_buffer(FALSE, eap, 0);
+	    if (curbuf->b_ml.ml_flags & ML_EMPTY)
+		ex_rewind(eap);
 	    return;
 	}
     }