Some old tmux versions can sometimes generate layout strings which have
the incorrect size for the top cell. Previously tmux didn't care but now
that panes can be partly hidden, the size matters and is checked more
strictly. So add some code to fix up the most common problem and a
sanity check to reject layouts with any other size problems. Reported by
Aleksandrs Ledovskis in GitHub issue 1930.
1 file changed
tree: 269d1a96b28193128288febfec0784e76663322c
  1. .github/
  2. .gitignore
  3. .mailmap
  4. .travis.yml
  5. CHANGES
  6. COPYING
  7. Makefile.am
  8. README
  9. README.ja
  10. SYNCING
  11. alerts.c
  12. arguments.c
  13. attributes.c
  14. autogen.sh
  15. cfg.c
  16. client.c
  17. cmd-attach-session.c
  18. cmd-bind-key.c
  19. cmd-break-pane.c
  20. cmd-capture-pane.c
  21. cmd-choose-tree.c
  22. cmd-command-prompt.c
  23. cmd-confirm-before.c
  24. cmd-copy-mode.c
  25. cmd-detach-client.c
  26. cmd-display-menu.c
  27. cmd-display-message.c
  28. cmd-display-panes.c
  29. cmd-find-window.c
  30. cmd-find.c
  31. cmd-if-shell.c
  32. cmd-join-pane.c
  33. cmd-kill-pane.c
  34. cmd-kill-server.c
  35. cmd-kill-session.c
  36. cmd-kill-window.c
  37. cmd-list-buffers.c
  38. cmd-list-clients.c
  39. cmd-list-keys.c
  40. cmd-list-panes.c
  41. cmd-list-sessions.c
  42. cmd-list-windows.c
  43. cmd-load-buffer.c
  44. cmd-lock-server.c
  45. cmd-move-window.c
  46. cmd-new-session.c
  47. cmd-new-window.c
  48. cmd-parse.y
  49. cmd-paste-buffer.c
  50. cmd-pipe-pane.c
  51. cmd-queue.c
  52. cmd-refresh-client.c
  53. cmd-rename-session.c
  54. cmd-rename-window.c
  55. cmd-resize-pane.c
  56. cmd-resize-window.c
  57. cmd-respawn-pane.c
  58. cmd-respawn-window.c
  59. cmd-rotate-window.c
  60. cmd-run-shell.c
  61. cmd-save-buffer.c
  62. cmd-select-layout.c
  63. cmd-select-pane.c
  64. cmd-select-window.c
  65. cmd-send-keys.c
  66. cmd-set-buffer.c
  67. cmd-set-environment.c
  68. cmd-set-option.c
  69. cmd-show-environment.c
  70. cmd-show-messages.c
  71. cmd-show-options.c
  72. cmd-source-file.c
  73. cmd-split-window.c
  74. cmd-swap-pane.c
  75. cmd-swap-window.c
  76. cmd-switch-client.c
  77. cmd-unbind-key.c
  78. cmd-wait-for.c
  79. cmd.c
  80. colour.c
  81. compat.h
  82. compat/
  83. configure.ac
  84. control-notify.c
  85. control.c
  86. environ.c
  87. example_tmux.conf
  88. format-draw.c
  89. format.c
  90. grid-view.c
  91. grid.c
  92. input-keys.c
  93. input.c
  94. job.c
  95. key-bindings.c
  96. key-string.c
  97. layout-custom.c
  98. layout-set.c
  99. layout.c
  100. log.c
  101. logo/
  102. mdoc2man.awk
  103. menu.c
  104. mode-tree.c
  105. names.c
  106. notify.c
  107. options-table.c
  108. options.c
  109. osdep-aix.c
  110. osdep-cygwin.c
  111. osdep-darwin.c
  112. osdep-dragonfly.c
  113. osdep-freebsd.c
  114. osdep-hpux.c
  115. osdep-linux.c
  116. osdep-netbsd.c
  117. osdep-openbsd.c
  118. osdep-sunos.c
  119. osdep-unknown.c
  120. paste.c
  121. presentations/
  122. proc.c
  123. regress/
  124. regsub.c
  125. resize.c
  126. screen-redraw.c
  127. screen-write.c
  128. screen.c
  129. server-client.c
  130. server-fn.c
  131. server.c
  132. session.c
  133. spawn.c
  134. status.c
  135. style.c
  136. tmux.1
  137. tmux.c
  138. tmux.h
  139. tools/
  140. tty-acs.c
  141. tty-keys.c
  142. tty-term.c
  143. tty.c
  144. utf8.c
  145. window-buffer.c
  146. window-client.c
  147. window-clock.c
  148. window-copy.c
  149. window-tree.c
  150. window.c
  151. xmalloc.c
  152. xmalloc.h
  153. xterm-keys.c