]> jfr.im git - yt-dlp.git/commitdiff
Fix `--compat-options list-formats`
authorpukkandan <redacted>
Wed, 2 Feb 2022 00:38:40 +0000 (06:08 +0530)
committerpukkandan <redacted>
Wed, 2 Feb 2022 00:39:10 +0000 (06:09 +0530)
Closes #2481

yt_dlp/utils.py

index 2b33e1ec9e6fa2397a09e3f17e97d3470669374c..8ba0c2d6cd3302f98427b03039cf176a08be5c9c 100644 (file)
@@ -3430,12 +3430,11 @@ def get_max_lens(table):
         return [max(width(str(v)) for v in col) for col in zip(*table)]
 
     def filter_using_list(row, filterArray):
-        return [col for (take, col) in zip(filterArray, row) if take]
+        return [col for take, col in itertools.zip_longest(filterArray, row, fillvalue=True) if take]
 
-    if hide_empty:
-        max_lens = get_max_lens(data)
-        header_row = filter_using_list(header_row, max_lens)
-        data = [filter_using_list(row, max_lens) for row in data]
+    max_lens = get_max_lens(data) if hide_empty else []
+    header_row = filter_using_list(header_row, max_lens)
+    data = [filter_using_list(row, max_lens) for row in data]
 
     table = [header_row] + data
     max_lens = get_max_lens(table)