1. Си / Говнокод #3816

    +100

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    f = fopen(file_name, "w");
    if (!f) {
      f = fopen(file_name, "w+");
      if (!f)
        logprintfl(EUCAWARN, "Cannot create %s!\n", file_name);
      else {
        len = fileno(f);
        if (len > 0)
          fchmod(len, S_IRUSR|S_IWUSR);
      }
    }

    Суровые калифорнийские парни сурово создают суровые файлы...

    Запостил: raorn, 29 Июля 2010

    Комментарии (2) RSS

    • Логично было бы "w+" и "w" поменять местами.
      Дурацкое название len для результата fileno().
      И если уж файл открыт как "w+" то права на чтение и запись уже есть.
      Зачем их устанавливать ещё раз?
      Ответить
    • Вообще для полного понимания говнистости этого кода желательно знать, для чего это писалось
      Ответить

    Добавить комментарий