diff src/misc2.c @ 7593:87e607fb6853 v7.4.1096

commit https://github.com/vim/vim/commit/a260b87d9da17f605666630f18c1ed909c2b8bae Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jan 15 20:48:22 2016 +0100 patch 7.4.1096 Problem: Need several lines to verify a command produces an error. Solution: Add assert_fails(). (suggested by Nikolay Pavlov) Make the quickfix alloc test actually work.
author Christian Brabandt <cb@256bit.org>
date Fri, 15 Jan 2016 21:00:06 +0100
parents 4c922651fd78
children 80bc36419c21
line wrap: on
line diff
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -798,13 +798,17 @@ vim_mem_profile_dump()
 #endif /* MEM_PROFILE */
 
 #ifdef FEAT_EVAL
+static int alloc_does_fail __ARGS((long_u size));
+
     static int
-alloc_does_fail()
+alloc_does_fail(size)
+    long_u size;
 {
     if (alloc_fail_countdown == 0)
     {
 	if (--alloc_fail_repeat <= 0)
 	    alloc_fail_id = 0;
+	do_outofmem_msg(size);
 	return TRUE;
     }
     --alloc_fail_countdown;
@@ -844,7 +848,7 @@ alloc_id(size, id)
     alloc_id_T	id UNUSED;
 {
 #ifdef FEAT_EVAL
-    if (alloc_fail_id == id && alloc_does_fail())
+    if (alloc_fail_id == id && alloc_does_fail((long_u)size))
 	return NULL;
 #endif
     return (lalloc((long_u)size, TRUE));
@@ -1008,7 +1012,7 @@ lalloc_id(size, message, id)
     alloc_id_T	id UNUSED;
 {
 #ifdef FEAT_EVAL
-    if (alloc_fail_id == id && alloc_does_fail())
+    if (alloc_fail_id == id && alloc_does_fail(size))
 	return NULL;
 #endif
     return (lalloc((long_u)size, message));