diff --git a/src/vteseq.c b/src/vteseq.c
index dc82792..5ecdcf9 100644
--- a/src/vteseq.c
+++ b/src/vteseq.c
@@ -1144,7 +1144,9 @@ vte_sequence_handler_cd (VteTerminal *terminal, GValueArray *params)
 			rowdata = _vte_terminal_ring_append (terminal, FALSE);
 		}
 		/* Pad out the row. */
-		_vte_row_data_fill (rowdata, &screen->fill_defaults, terminal->column_count);
+		if (screen->fill_defaults.attr.back != VTE_DEF_BG) {
+			_vte_row_data_fill (rowdata, &screen->fill_defaults, terminal->column_count);
+		}
 		rowdata->attr.soft_wrapped = 0;
 		/* Repaint this row. */
 		_vte_invalidate_cells(terminal,
