index 88a867fe8e33a9bcbb830ff54287d299642cb8bc..973f0b335d7871c0670d2d57512e741ae3c1384f 100644 (file)
do_sql_command(g_conn, "SET quote_all_identifiers = true");
/*
- * Disables security label support if server version < v9.1.x
+ * Disable security label support if server version < v9.1.x (prevents
+ * access to nonexistent pg_seclabel catalog)
*/
- if (!no_security_labels && g_fout->remoteVersion < 90100)
+ if (g_fout->remoteVersion < 90100)
no_security_labels = 1;
/*
@@ -11993,6 +11994,12 @@ findSecLabels(Archive *fout, Oid classoid, Oid objoid, SecLabelItem **items)
if (nlabels < 0)
nlabels = collectSecLabels(fout, &labels);
+ if (nlabels <= 0) /* no labels, so no match is possible */
+ {
+ *items = NULL;
+ return 0;
+ }
+
/*
* Do binary search to find some item matching the object.
*/