Выход xsel содержит мусор в конце, если в него вставлен длинный ввод для установки буфера обмена

Воспроизвести:

seq 10000 | /usr/bin/xsel -b
/usr/bin/xsel -b

Наблюдаемый вывод: любой из:

  • ничего такого
  • правильный вывод
  • правильный вывод + несколько строк мусора в конце

Выходные данные меняются случайным образом между этими тремя, даже если я бегу xsel -b несколько раз без сброса его с трубы на стандартный ввод!

Ввод должен быть достаточно большим: seq 1000 не работает. Реальные байты, кажется, не имеют значения, только размер ввода.

Однажды seq 10000 | /usr/bin/xsel -b:

  • xclip -selection clipboard -o также поврежден, но другим странным образом
  • вставка с помощью Ctrl + V на текстовой области, кажется, работает нормально

Я не воспроизводлю это, если я пытаюсь установить текстовое поле с помощью:

  • Ctrl + C
  • seq 10000 | xclip -selection clipboard

так что, похоже, проблема в том, как xsel обрабатывает ввод stdin.

С помощью -i а также -o ничего не изменилось.

Проблема началась сегодня "сама по себе".

Если вы воспроизводите, пожалуйста, добавьте комментарий ниже.

Ubuntu 14.04 AMD64, xsel 1.2.0.

0 ответов

Другие вопросы по тегам