]> git.proxmox.com Git - pve-client.git/blobdiff - PVE/APIClient/Helpers.pm
fixes for changes in pve-common
[pve-client.git] / PVE / APIClient / Helpers.pm
index 106e497790512d65f068f92af1ba53d21b0f2ca9..3429f4db21e6f736eab4515555fa91d4a6fe11b7 100644 (file)
@@ -203,21 +203,20 @@ sub complete_api_path {
        if (my $children = $info->{children}) {
            foreach my $c (@$children) {
                my $ctext = $c->{text};
+               push @$res, "${prefix}$ctext" if $ctext =~ m/^\Q$rest/;
                if ($ctext =~ m/^\{(\S+)\}$/) {
-                   push @$res, "$prefix$ctext";
-                   push @$res, "$prefix$ctext/";
-                   if (length($rest)) {
+                   if (length($rest) && $rest ne $ctext) {
                        push @$res, "$prefix$rest";
-                       push @$res, "$prefix$rest/";
                    }
-               } elsif ($ctext =~ m/^\Q$rest/) {
-                   push @$res, "$prefix$ctext";
-                   push @$res, "$prefix$ctext/" if $c->{children};
                }
            }
        }
     }
 
+    if (scalar(@$res) == 1) {
+       $res = [$res->[0], "$res->[0]/"];
+    }
+
     return $res;
 }
 
@@ -393,6 +392,7 @@ sub print_ordered_result {
 
     my $param_order = extract_even_elements($property_list);
 
+    PVE::APIClient::CLIFormatter::query_terminal_options($options);
     PVE::APIClient::CLIFormatter::print_api_result($data, $result_schema, $param_order, $options);
 }