diff --git a/src/if_perl.xs b/src/if_perl.xs
index bc15efa..9fd2196 100644
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -831,8 +831,7 @@
 	ptr->w_perl_private = newSV(0);
 	sv_setiv(ptr->w_perl_private, PTR2IV(ptr));
     }
-    else
-	SvREFCNT_inc_void_NN(ptr->w_perl_private);
+    SvREFCNT_inc_void_NN(ptr->w_perl_private);
     SvRV(rv) = ptr->w_perl_private;
     SvROK_on(rv);
     return sv_bless(rv, gv_stashpv("VIWIN", TRUE));
@@ -847,8 +846,7 @@
 	ptr->b_perl_private = newSV(0);
 	sv_setiv(ptr->b_perl_private, PTR2IV(ptr));
     }
-    else
-	SvREFCNT_inc_void_NN(ptr->b_perl_private);
+    SvREFCNT_inc_void_NN(ptr->b_perl_private);
     SvRV(rv) = ptr->b_perl_private;
     SvROK_on(rv);
     return sv_bless(rv, gv_stashpv("VIBUF", TRUE));
@@ -918,12 +916,13 @@
     else
 	rv = newBUFrv(newSV(0), curbuf);
 
-    if (SvRV(sv) == SvRV(rv))
-	SvREFCNT_dec(SvRV(rv));
-    else // XXX: Not sure if the `else` condition are right
-	 // Test_SvREFCNT() pass in all case.
+    if (SvRV(sv) != SvRV(rv))
+	// XXX: This magic variable is a bit confusing...
+	// Is curently refcounted ?
 	sv_setsv(sv, rv);
 
+    SvREFCNT_dec(rv);
+
     return 0;
 }
 #endif /* !PROTO */
diff --git a/src/testdir/test_perl.vim b/src/testdir/test_perl.vim
index 661c65c..03c5fa0 100644
--- a/src/testdir/test_perl.vim
+++ b/src/testdir/test_perl.vim
@@ -4,6 +4,9 @@
   finish
 end
 
+" FIXME: RunTest don't see any error when Perl abort...
+perl $SIG{__WARN__} = sub { die "Unexpected warnings from perl: @_" };
+
 func Test_change_buffer()
   call setline(line('$'), ['1 line 1'])
   perl VIM::DoCommand("normal /^1\n")
@@ -229,6 +232,15 @@
 #line 5 "Test_000_SvREFCNT()"
   my ($b, $w);
 
+  my $num = 0;
+  for ( 0 .. 100 ) {
+      if ( ++$num >= 8 ) { $num = 0 }
+      VIM::DoCommand("buffer X$num");
+      $b = $curbuf;
+  }
+
+  VIM::DoCommand("buffer t");
+
   $b = $curbuf      for 0 .. 100;
   $w = $curwin      for 0 .. 100;
   () = VIM::Buffers for 0 .. 100;
@@ -240,12 +252,13 @@
       my $cw = Internals::SvREFCNT($$w);
       VIM::Eval("assert_equal(2, $cb, 'T1')");
       VIM::Eval("assert_equal(2, $cw, 'T2')");
+      my $strongref;
       foreach ( VIM::Buffers, VIM::Windows ) {
+	  VIM::DoCommand("%bw!");
 	  my $c = Internals::SvREFCNT($_);
 	  VIM::Eval("assert_equal(2, $c, 'T3')");
 	  $c = Internals::SvREFCNT($$_);
-	  # Why only one ref?
-	  # Look wrong but work.  Maybe not portable...
+	  next if $c == 2 && !$strongref++;
 	  VIM::Eval("assert_equal(1, $c, 'T4')");
       }
       $cb = Internals::SvREFCNT($$curbuf);
diff --git a/src/version.c b/src/version.c
index 6e6c3cd..482b38e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -795,6 +795,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    234,
+/**/
     233,
 /**/
     232,
