1. Список говнокодов пользователя vanished

    Всего: 3

  2. Pascal / Говнокод #4966

    +109

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    procedure RemoveDir(path: string);
    var
      sr: TSearchRec;
    begin
      if FindFirst(path + '\*.*', faAnyFile, sr) = 0 then
      begin
        repeat     
          if sr.Attr and faDirectory = 0 then
            DeleteFile(path + '\' + sr.name);
          else
              RemoveDir(path + '\' + sr.name);
        until
          FindNext(sr) <> 0;
      end;
      FindClose(sr);
      RemoveDirectory(PChar(path));
    end;

    История такова, писал я как-то программу по курсовому. (Это было еще года два-три назад, когда я про юнит тесты и различные технологии проектирования и разработки ничего не знал.) По задумки программа распаковывала некие файлы во временный каталог рядом с приложением и по завершению работы с ними удаляла эту папку вот этим методом. Итак, запустил я эту подпрограмму на выполнение для проверки ее работоспособности и смотрю в файловом менеджере, что папка успешно удалилась и все ок. Но вдруг студия начала жаловаться что нет каких-то файлов, я смотрю в файловый менеджер и вижу что файлы проекта программы исчезают буквально на глазах! Естественно я резко убиваю программу и далее начинаю восстанавливать исходники. Благо, что делал бэкапы и эта подпрограмма проработала все ничего, а ведь последствия могли быть еще больше. А мораль такая, нужно быть предельно внимательным, когда работаешь с удалением какой-либо информации.

    P.S. Нужно добавить проверку между 10 и 11 строкой:
    if (sr.Name <> '..') and (sr.Name <> '.') then

    vanished, 18 Декабря 2010

    Комментарии (20)
  3. C# / Говнокод #4964

    +127

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    //TODO: Delete the comment after a successful test.
    
    var Client = new TcpClient();
    
    int a = num._.i.i.i.i.i;
    int b = num._.i.i.i.u.d;
    int c = (((num)(a + b)).l++.u+b).u.i.i;
    
    // port = 726
    int port = a + b + c;
    
    // ips = "127.0.0.1"
    string ips = ip._.i.u.i.i.i.u.d.d.d.s['.'].s['.'].s['.'].i.s;
    
    Client.Connect(ips, port);

    Very hard-hard code!

    vanished, 18 Декабря 2010

    Комментарии (29)
  4. SQL / Говнокод #4954

    −188

    1. 1
    2. 2
    3. 3
    exec sp_executesql N'UPDATE [dbo].[sop_user_master]
    SET [user_firstname] = @p0, [user_password_hash] = @p1, [user_password_salt] = @p2
    WHERE 0 = 1',N'@p0 nvarchar(15),@p1 varbinary(32),@p2 varbinary(6)',@p0=N'AFDAasddddddddd',@p1=0xBB8012CAAB306E470D4918B490D7100DC464B5106A291896D045892B5F303309,@p2=0x80DE1E731993

    Вот какой запрос генерирует Linq to SQL)))

    vanished, 17 Декабря 2010

    Комментарии (5)