diff --git a/src/misc1.c b/src/misc1.c
index f7789ff..eb893f6 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -2313,7 +2313,8 @@
 
     /* Copy bytes after the changed character(s). */
     p = newp + col;
-    mch_memmove(p + newlen, oldp + col + oldlen,
+    if (linelen > col + oldlen)
+	mch_memmove(p + newlen, oldp + col + oldlen,
 					    (size_t)(linelen - col - oldlen));
 
     /* Insert or overwrite the new character. */
diff --git a/src/popupmnu.c b/src/popupmnu.c
index 418f0ca..ec75281 100644
--- a/src/popupmnu.c
+++ b/src/popupmnu.c
@@ -566,6 +566,7 @@
 		&& vim_strchr(p_cot, 'p') != NULL)
 	{
 	    win_T	*curwin_save = curwin;
+	    tabpage_T   *curtab_save = curtab;
 	    int		res = OK;
 
 	    /* Open a preview window.  3 lines by default.  Prefer
@@ -653,8 +654,13 @@
 		    curwin->w_cursor.lnum = 1;
 		    curwin->w_cursor.col = 0;
 
-		    if (curwin != curwin_save && win_valid(curwin_save))
+		    if ((curwin != curwin_save && win_valid(curwin_save))
+			    || (curtab != curtab_save
+						&& valid_tabpage(curtab_save)))
 		    {
+			if (curtab != curtab_save && valid_tabpage(curtab_save))
+			    goto_tabpage_tp(curtab_save, FALSE, FALSE);
+
 			/* When the first completion is done and the preview
 			 * window is not resized, skip the preview window's
 			 * status line redrawing. */
diff --git a/src/testdir/test_popup.vim b/src/testdir/test_popup.vim
index b770e56..ac8f62e 100644
--- a/src/testdir/test_popup.vim
+++ b/src/testdir/test_popup.vim
@@ -661,4 +661,41 @@
   bwipe!
 endfunc
 
+func Test_popup_and_preview_autocommand()
+  " This used to crash Vim
+  if !has('python')
+    return
+  endif
+  let h = winheight(0)
+  if h < 15
+    return
+  endif
+  new
+  augroup MyBufAdd
+    au!
+    au BufAdd * nested tab sball
+  augroup END
+  set omnifunc=pythoncomplete#Complete
+  call setline(1, 'import os')
+  " make the line long
+  call setline(2, '                                 os.')
+  $
+  call feedkeys("A\<C-X>\<C-O>\<C-N>\<C-N>\<C-N>\<enter>\<esc>", 'tx')
+  call assert_equal(["import os", "                                 os.EX_IOERR", ''], getline(1,'$'))
+  call assert_equal(1, winnr('$'))
+  " previewwindow option is not set
+  call assert_equal(0, &previewwindow)
+  norm! gt
+  call assert_equal(0, &previewwindow)
+  norm! gT
+  call assert_equal(12, tabpagenr('$'))
+  tabonly
+  pclose
+  augroup MyBufAdd
+    au!
+  augroup END
+  augroup! MyBufAdd
+  bw!
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 1cb437b..6ccb610 100644
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1223,
+/**/
     1222,
 /**/
     1221,
