diff --git a/src/search.c b/src/search.c
index f7c7eca..5949116 100644
--- a/src/search.c
+++ b/src/search.c
@@ -4412,8 +4412,8 @@
 current_quote(
     oparg_T	*oap,
     long	count,
-    int		include,	/* TRUE == include quote char */
-    int		quotechar)	/* Quote character */
+    int		include,	// TRUE == include quote char
+    int		quotechar)	// Quote character
 {
     char_u	*line = ml_get_curline();
     int		col_end;
@@ -4421,12 +4421,15 @@
     int		inclusive = FALSE;
     int		vis_empty = TRUE;	// Visual selection <= 1 char
     int		vis_bef_curs = FALSE;	// Visual starts before cursor
+    int		did_exclusive_adj = FALSE;  // adjusted pos for 'selection'
     int		inside_quotes = FALSE;	// Looks like "i'" done before
     int		selected_quote = FALSE;	// Has quote inside selection
     int		i;
     int		restore_vis_bef = FALSE; // restore VIsual on abort
 
-    /* Correct cursor when 'selection' is "exclusive". */
+    // When 'selection' is "exclusive" move the cursor to where it would be
+    // with 'selection' "inclusive", so that the logic is the same for both.
+    // The cursor then is moved forward after adjusting the area.
     if (VIsual_active)
     {
 	/* this only works within one line */
@@ -4437,6 +4440,17 @@
 	vis_empty = EQUAL_POS(VIsual, curwin->w_cursor);
 	if (*p_sel == 'e')
 	{
+	    if (vis_bef_curs)
+	    {
+		dec_cursor();
+		did_exclusive_adj = TRUE;
+	    }
+	    else if (!vis_empty)
+	    {
+		dec(&VIsual);
+		did_exclusive_adj = TRUE;
+	    }
+	    vis_empty = EQUAL_POS(VIsual, curwin->w_cursor);
 	    if (!vis_bef_curs && !vis_empty)
 	    {
 		// VIsual needs to be the start of Visual selection.
@@ -4447,8 +4461,6 @@
 		vis_bef_curs = TRUE;
 		restore_vis_bef = TRUE;
 	    }
-	    dec_cursor();
-	    vis_empty = EQUAL_POS(VIsual, curwin->w_cursor);
 	}
     }
 
@@ -4626,7 +4638,7 @@
     {
 	if (vis_empty || vis_bef_curs)
 	{
-	    /* decrement cursor when 'selection' is not exclusive */
+	    // decrement cursor when 'selection' is not exclusive
 	    if (*p_sel != 'e')
 		dec_cursor();
 	}
@@ -4663,7 +4675,8 @@
 abort_search:
     if (VIsual_active && *p_sel == 'e')
     {
-	inc_cursor();
+	if (did_exclusive_adj)
+	    inc_cursor();
 	if (restore_vis_bef)
 	{
 	    pos_T t = curwin->w_cursor;
diff --git a/src/testdir/test_textobjects.vim b/src/testdir/test_textobjects.vim
index 5702a6a..042c534 100644
--- a/src/testdir/test_textobjects.vim
+++ b/src/testdir/test_textobjects.vim
@@ -45,11 +45,18 @@
   new
   call setline(1, "a 'bcde' f")
   set selection=exclusive
+
   exe "norm! fdvhi'y"
   call assert_equal('bcde', @")
+
   let @"='dummy'
   exe "norm! $gevi'y"
   call assert_equal('bcde', @")
+
+  let @"='dummy'
+  exe "norm! 0fbhvi'y"
+  call assert_equal('bcde', @")
+
   set selection&vim
   bw!
 endfunc
diff --git a/src/version.c b/src/version.c
index 76e3f1b..41bd4cc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -738,6 +738,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2330,
+/**/
     2329,
 /**/
     2328,
