diff --git a/src/screen.c b/src/screen.c
index 6d48ad7..cbf2ab3 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -1043,7 +1043,8 @@
     {
 	row = statusline_row(wp);
 	fillchar = fillchar_status(&attr, wp);
-	maxwidth = wp->w_width;
+	int in_status_line = wp->w_status_height != 0;
+	maxwidth = in_status_line ? wp->w_width : Columns;
 
 	if (draw_ruler)
 	{
@@ -1060,11 +1061,11 @@
 		if (*stl++ != '(')
 		    stl = p_ruf;
 	    }
-	    col = ru_col - (Columns - wp->w_width);
-	    if (col < (wp->w_width + 1) / 2)
-		col = (wp->w_width + 1) / 2;
-	    maxwidth = wp->w_width - col;
-	    if (!wp->w_status_height)
+	    col = ru_col - (Columns - maxwidth);
+	    if (col < (maxwidth + 1) / 2)
+		col = (maxwidth + 1) / 2;
+	    maxwidth -= col;
+	    if (!in_status_line)
 	    {
 		row = Rows - 1;
 		--maxwidth;	// writing in last column may cause scrolling
@@ -1084,7 +1085,8 @@
 		stl = p_stl;
 	}
 
-	col += wp->w_wincol;
+	if (in_status_line)
+	    col += wp->w_wincol;
     }
 
     if (maxwidth <= 0)
diff --git a/src/testdir/dumps/Test_rulerformat_position.dump b/src/testdir/dumps/Test_rulerformat_position.dump
new file mode 100644
index 0000000..2787a92
--- /dev/null
+++ b/src/testdir/dumps/Test_rulerformat_position.dump
@@ -0,0 +1,2 @@
+| +0&#ffffff0@17||+1&&> +0&&
+@10|l|o|n|g|i|s|h| @2
diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim
index 8b717b7..9bb21bc 100644
--- a/src/testdir/test_cmdline.vim
+++ b/src/testdir/test_cmdline.vim
@@ -3459,4 +3459,17 @@
   cunmap a
 endfunc
 
+func Test_rulerformat_position()
+  CheckScreendump
+
+  let buf = RunVimInTerminal('', #{rows: 2, cols: 20})
+  call term_sendkeys(buf, ":set ruler rulerformat=longish\<CR>")
+  call term_sendkeys(buf, ":set laststatus=0 winwidth=1\<CR>")
+  call term_sendkeys(buf, "\<C-W>v\<C-W>|\<C-W>p")
+  call VerifyScreenDump(buf, 'Test_rulerformat_position', {})
+
+  " clean up
+  call StopVimInTerminal(buf)
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 4f54fab..053fe78 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1461,
+/**/
     1460,
 /**/
     1459,
