1. C++ / Говнокод #1632

    +28

    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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    COMMAND command;
    BUFFER Buffer1;
    BUFFER Buffer2;
    ...
    byte NetSend(byte*& data, int& size)
    {
    	byte fErr = NO_ERRORS;
    	char* const Data = (char* const)data;
    
    	if(Data != 0)
    	{
    		if(Data[0] != 0)
    		{
    			Buffer1.writeData(Data,size,NULL);
    			command='Send';
    			byte fErr=net.sendCommand(command,Buffer1);
    		}
    		else 
    		{
    			Buffer2.writeData(Data,size,NULL);
    			command='SendFast';
    			byte fErr=net.sendCommand(command,Buffer2);
    		};
    	}
    	else
    	{
    		byte fErr=SEND_PARAM_ERROR;
    	}
    	
    	return fErr;
    };

    Зачем же автор завёл два Buffer? :D

    Запостил: Говногость, 19 Августа 2009

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

    • 1)Глобальные переменные выглядят подозрительно.
      2)Выглядит странно if(Data[0] != 0) ююю
      3)Эта функция всегда возращает NO_ERRORS, при любом расскладе.
      Ответить
    • Может, там асинхронная отправка?..
      Ответить
      • Ээээ... Ты про что?
        Ответить
        • Ну, функция sendCommand может отправлять данные асинхронно. Тогда надо, чтобы этот буфер на затирался пока данные не отправятся. Для того и 2 буфера, чтобы можно было 2 команды одновременно асинхронно отправлять :)
          Бред, конечно, но, кто его знает, что автор задумал...
          Ответить
          • ХеХе. Похоже ты прав. Бррр... Ну и говнокод...
            Ответить
    • Это точно C++? Почему одинарные кавычки?
      Ответить
      • Странно. Это какой-то глюк. Сейчас специально проверил. В источнике кода двойные ковычки.
        Ответить
    • Очевидно, что данная функция используется несколькими различными потоками, которые заполняют буферы. Две переменные Buffer нужны для того, что бы можно было совершать быструю отправку немедленно, не дожидаясь отправки всего содержимого "медленного" буфера. Автору КОЛ по алгоритмированию !
      Ответить

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