Index: src/wp-admin/includes/class-wp-list-table.php
===================================================================
--- src/wp-admin/includes/class-wp-list-table.php	(revision 33042)
+++ src/wp-admin/includes/class-wp-list-table.php	(working copy)
@@ -859,7 +859,19 @@
 		$column  = apply_filters( 'list_table_primary_column', $default, $this->screen->id );
 
 		if ( empty( $column ) || ! isset( $columns[ $column ] ) ) {
-			$column = $default;
+
+			// Grab the first non-checkbox column
+			foreach( $columns as $col => $column_name ) {
+
+				if( 'cb' === $col ) {
+					continue;
+				}
+
+				$column = $col;
+				break;
+
+			}
+
 		}
 
 		return $column;
@@ -878,7 +890,7 @@
 		if ( isset( $this->_column_headers ) && is_array( $this->_column_headers ) ) {
 			// Back-compat for list tables that have been manually setting $_column_headers for horse reasons.
 			// In 4.3, we added a fourth argument for primary column.
-			$column_headers = array( array(), array(), array(), '' );
+			$column_headers = array( array(), array(), array(), $this->get_primary_column_name() );
 			foreach ( $this->_column_headers as $key => $value ) {
 				$column_headers[ $key ] = $value;
 			}
