Source is the best documentation. Free LSD!

Ivan8209


246 wfd = fileno(stdout);
247 if (buf == NULL) {
248 if (fstat(wfd, &sbuf
249 err(1, "%s", filename);

Кто-нибудь, объясните мне сакральный смысл выводить
имя входного файла, если не статится stdout.
Или это меня плющит?

__FBSDID("$FreeBSD: src/bin/cat/cat.c,v 1.31 2004/07/20 05:47:06 tjr Exp $");

---
...Я работаю антинаучным аферистом...

ppplva

Может он в stderr выводит ?

sergey_m

Да, и об этом написано в первом предложении мануала.

Ivan8209


143 if (path == NULL || strcmp(path, "-") == 0) {
144 filename = "stdin";

Я плохо понимаю, зачем писать про stdin, если проблемы со stdout.
Меня просто плющит и это баг, или я что-то недопонимаю?
---
...Я работаю антинаучным аферистом...

sergey_m

Какие проблемы? Почему stdout? Эта функция открывает файл из которого cat читает.

Ivan8209

У меня есть стойкое ощущение, что в 249-й строке вместо

err(1, "%s", filename);
должно стоять

err(1, "stdout");

---
"Чую бесовщину, но обосновать --- не могу!"

sergey_m

Похоже ты прав. Какой reproduce receipt?
Оставить комментарий
Имя или ник:
Комментарий: