1. C# / Говнокод #5988

    +140

    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
    try
    {
    	client.SendData(xml);
    }
    catch(Exception e)
    {
    	string s = e.ToString();
    	if(s.Substring(0,80)=="System.InvalidOperationException: Operation not allowed on non-connected sockets")
    	{
    		client.tcpclient.Close();
    		clients.Remove(client.SessionId);
    	}
    	else if (s.Substring(0,71)=="System.IO.IOException: Unable to write data to the transport connection")
    	{
    		client.tcpclient.Close();
    		clients.Remove(client.SessionId);
    	}
    	else
    	{
    		client.tcpclient.Close();
    		clients.Remove(client.SessionId);
    	}
    }

    нестандартное определение типа исключения
    найдено в примерах кода кандидата на работу

    mozg_raka, 15 Марта 2011

    Комментарии (21)
  2. Куча / Говнокод #5987

    +141

    1. 1
    http://respect.lg.ua/

    Смотрим хтмл код в самом низу.

    alex322, 15 Марта 2011

    Комментарии (29)
  3. JavaScript / Говнокод #5986

    +169

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function isTheSame(string1, string2) {
    	var firstResult =new RegExp(string1).test(string2); 
    	var secondResult =new RegExp(string2).test(string1);
    	var commonResult = firstResult && secondResult;
    	return commonResult;
    }

    tr00_gr1m_doomster, 15 Марта 2011

    Комментарии (9)
  4. C# / Говнокод #5985

    +126

    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
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    public class BasisTariffing : IFormattable
    {
    	public override bool Equals(object obj) {
    		BasisTariffing subject = obj as BasisTariffing;
    		if (subject == null) {
    			return false;
    		}
    		return ((Profession == null && subject.Profession == null) || (Profession != null && subject.Profession != null && Profession.Equals(subject.Profession))) &&
    			((BasisRateOf == null && subject.BasisRateOf == null) || (BasisRateOf != null && subject.BasisRateOf != null && BasisRateOf.Equals(subject.BasisRateOf))) &&
    			((BasisRating1Main == null && subject.BasisRating1Main == null) || (BasisRating1Main != null && subject.BasisRating1Main != null && BasisRating1Main.Equals(subject.BasisRating1Main))) &&
    			((BasisRating1Add == null && subject.BasisRating1Add == null) || (BasisRating1Add != null && subject.BasisRating1Add != null && BasisRating1Add.Equals(subject.BasisRating1Add))) &&
    			((BasisRating2Main == null && subject.BasisRating2Main == null) || (BasisRating2Main != null && subject.BasisRating2Main != null && BasisRating2Main.Equals(subject.BasisRating2Main))) &&
    			((BasisRating2Add == null && subject.BasisRating2Add == null) || (BasisRating2Add != null && subject.BasisRating2Add != null && BasisRating2Add.Equals(subject.BasisRating2Add))) &&
    			((BasisRating3Main == null && subject.BasisRating3Main == null) || (BasisRating3Main != null && subject.BasisRating3Main != null && BasisRating3Main.Equals(subject.BasisRating3Main))) &&
    			((BasisRating3Add == null && subject.BasisRating3Add == null) || (BasisRating3Add != null && subject.BasisRating3Add != null && BasisRating3Add.Equals(subject.BasisRating3Add))) &&
    			((BasisRating4Main == null && subject.BasisRating4Main == null) || (BasisRating4Main != null && subject.BasisRating4Main != null && BasisRating4Main.Equals(subject.BasisRating4Main))) &&
    			((BasisRating4Add == null && subject.BasisRating4Add == null) || (BasisRating4Add != null && subject.BasisRating4Add != null && BasisRating4Add.Equals(subject.BasisRating4Add))) &&
    			((BasisRating5Main == null && subject.BasisRating5Main == null) || (BasisRating5Main != null && subject.BasisRating5Main != null && BasisRating5Main.Equals(subject.BasisRating5Main))) &&
    			((BasisRating5Add == null && subject.BasisRating5Add == null) || (BasisRating5Add != null && subject.BasisRating5Add != null && BasisRating5Add.Equals(subject.BasisRating5Add))) &&
    			((BasisRating6Main == null && subject.BasisRating6Main == null) || (BasisRating6Main != null && subject.BasisRating6Main != null && BasisRating6Main.Equals(subject.BasisRating6Main))) &&
    			((BasisRating6Add == null && subject.BasisRating6Add == null) || (BasisRating6Add != null && subject.BasisRating6Add != null && BasisRating6Add.Equals(subject.BasisRating6Add))) &&
    			((BasisRating7Main == null && subject.BasisRating7Main == null) || (BasisRating7Main != null && subject.BasisRating7Main != null && BasisRating7Main.Equals(subject.BasisRating7Main))) &&
    			((BasisRating7Add == null && subject.BasisRating7Add == null) || (BasisRating7Add != null && subject.BasisRating7Add != null && BasisRating7Add.Equals(subject.BasisRating7Add))) &&
    			((BasisRating8Main == null && subject.BasisRating8Main == null) || (BasisRating8Main != null && subject.BasisRating8Main != null && BasisRating8Main.Equals(subject.BasisRating8Main))) &&
    			((BasisRating8Add == null && subject.BasisRating8Add == null) || (BasisRating8Add != null && subject.BasisRating8Add != null && BasisRating8Add.Equals(subject.BasisRating8Add)));
    	}
    
    	public override int GetHashCode() {
    		return ((Profession != null) ? Profession.GetHashCode() : 0) ^
    			((BasisRateOf != null) ? BasisRateOf.GetHashCode() : 0) ^
    			((BasisRating1Main != null) ? BasisRating1Main.GetHashCode() : 0) ^
    			((BasisRating1Add != null) ? BasisRating1Add.GetHashCode() : 0) ^
    			((BasisRating2Main != null) ? BasisRating2Main.GetHashCode() : 0) ^
    			....................................
    	}
    }

    Как вам перегрузочка? И это только часть кода *сущности*, больше просто не вместилось =)

    Guid, 15 Марта 2011

    Комментарии (9)
  5. PHP / Говнокод #5984

    +156

    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
    $properties_array = array_keys($this->values);
                array_unshift($properties_array, $properties_array[0]);
                unset($properties_array[0]);
                $properties_values_array = array_values($properties_array);
                $values_array = array_values($this->values);
                $properties = implode('` ,`', $properties_values_array);
                $values = implode(', ', array_fill(0, count($this->values), '?'));
                $result = self::$orm->db->prepare('INSERT INTO `' . $this->table . '`  (`' . $properties . '`) values (' . $values . ')');
                foreach ($values_array as $key => $value) {
                    $fieldinfo = $this->fields[$properties_values_array[$key]];
                    $result->bindParam($key + 1, $values_array[$key], $this->correctDataType($fieldinfo['native_type'], $fieldinfo['pdo_type']), $fieldinfo['len']);
                }
                $result->execute();

    Чувствую код плохо пахнет, надо разбирать)) Высоко нагруженный проект ;)

    PANACEA, 15 Марта 2011

    Комментарии (7)
  6. 1C / Говнокод #5983

    −110

    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
    СписокЗначенийТиповЦен = Новый СписокЗначений;
    ...
    КоличествоЦен = 0;
    РезультатВыбора = ФормаВыбораТиповЦен.ОткрытьМодально();
    Для Каждого Элемент Из РезультатВыбора Цикл 
    	СписокЗначенийТиповЦен.Добавить(Элемент.Значение);
    	КоличествоЦен = КоличествоЦен + 1;
    КонецЦикла;
    
    Если КоличествоЦен = 0 Тогда
    	Предупреждение("Не выбран ни один тип цен!!!");	
    	Возврат;
    КонецЕсли;

    Нет проверки на возвращение "неопределено" в строке 4. К тому же в результате возвращает список значений, зачем создавать еще один список и все элементы переносить в него для меня загадка.
    Ну и счетчик количества элементов в цикле вместо РезультатВыбора.Количество() на десерт.

    ingenuus, 14 Марта 2011

    Комментарии (13)
  7. C++ / Говнокод #5982

    +160

    1. 1
    2. 2
    float alpha = float(m_startAlpha) + 255.0f * (getElapsed() / (m_duration * (1.0f - float(m_startAlpha) / 255.0f)));
    m_target->setAlpha(static_cast<uint8_t>(alpha));

    Выдержка из обновления объекта-действия, производящего линейный фейд-аут объекта...

    Общение с чужим говнокодом не проходит бесследно... что же я курил, перед тем как ЭТО соорудить?

    Kirinyale, 14 Марта 2011

    Комментарии (5)
  8. Си / Говнокод #5981

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (argc == 3)
        snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[2]);
    else if (argc >= 4)
    {
        snprintf(outfile, sizeof(outfile) - 1, "scan.log", argv[1], argv[3], argv[2]);
        // ...
    }

    Какой-то иксплойт, файл pscan2.c

    raorn, 14 Марта 2011

    Комментарии (15)
  9. Си / Говнокод #5980

    +138

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    int ftp_list (int sck, int verbose) {
    	/* ... */
    	list = fopen("LIST.txt", "w");
    
    	if (list == NULL) {
    		printf("Unable to open LIST file..\n");
    		free(buffer);
    		
    		return -1;
    	}
    	/* ... */
    }

    Функция получения списка файлов в директории с FTP-сервера.
    http://sourceforge.net/projects/libftp/

    EmbargEr, 14 Марта 2011

    Комментарии (7)
  10. SQL / Говнокод #5979

    −851

    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
    32. 32
    33. 33
    34. 34
    select distinct bk.ID, bk.URL, bk.Date, bk.Name, bk.Description, bk.UserCreatorID from bookmarking_bookmark as bk 
    where bk.Tenant=@Tenant and bk.ID in 
    (select *  from (select b.ID  from bookmarking_bookmark as b  left join  bookmarking_bookmarktag as bt on b.ID=bt.BookmarkID left join bookmarking_tag as t  on bt.TagID=t.TagID 
    left join (select ub.BookmarkID as BookmarkID, ub.Name as UserBookmarkName,ub.Description as UserBookmarkDescription, t.Name as TagName  
    from (select * from bookmarking_userbookmark as ub where ub.UserID=@userID) as ub 
    left join bookmarking_userbookmarktag as ubt  on ub.UserBookmarkID=ubt.UserBookmarkID  
    left join bookmarking_tag as t  on ubt.TagID=t.TagID) as ub on b.ID=ub.BookmarkID 
    where  ( ( lower(b.URL) like lower(@tagNameForUrlWithoutLastSlash0) )  
    or (lower(b.Name) like lower(@tagName0) or lower(b.Name) like lower(@tagNameWithSpace0)) 
    or (lower(b.Description) like lower(@tagName0) or lower(b.Description) like lower(@tagNameWithSpace0))    
    or (lower(t.Name) like lower(@tagName0)) or (lower(t.Name)  like lower(@tagNameWithSpace0)) 
    or (lower(TagName) like lower(@tagName0)) or (lower(TagName) like lower(@tagNameWithSpace0))    
    or (lower(UserBookmarkName) like lower(@tagName0) or lower(UserBookmarkName) like lower(@tagNameWithSpace0))    
    or (lower(UserBookmarkDescription) like lower(@tagName0) or lower(UserBookmarkDescription) like lower(@tagNameWithSpace0)))  
    and b.ID in (
    select b.ID   from bookmarking_bookmark as b  left join  bookmarking_bookmarktag as bt  on b.ID=bt.BookmarkID
    left join bookmarking_tag as t    on bt.TagID=t.TagID 
    left join  (
    select ub.BookmarkID as BookmarkID, ub.Name as UserBookmarkName, ub.Description as UserBookmarkDescription, t.Name as TagName from 
    (select * from bookmarking_userbookmark as ub where ub.UserID=@userID) as ub  
    left join bookmarking_userbookmarktag as ubt on ub.UserBookmarkID=ubt.UserBookmarkID
    left join bookmarking_tag as t on ubt.TagID=t.TagID) as ub on b.ID=ub.BookmarkID
    where  (( lower(b.URL) like lower(@tagNameForUrlWithoutLastSlash1) ) or (lower(b.Name) like lower(@tagName1) or lower(b.Name) like lower(@tagNameWithSpace1)) 
    or (lower(b.Description) like lower(@tagName1) or lower(b.Description) like lower(@tagNameWithSpace1)) or (lower(t.Name) like lower(@tagName1)) 
    or (lower(t.Name)  like lower(@tagNameWithSpace1)) or (lower(TagName) like lower(@tagName1)) or (lower(TagName) like lower(@tagNameWithSpace1))  
    or (lower(UserBookmarkName) like lower(@tagName1) or lower(UserBookmarkName) like lower(@tagNameWithSpace1)) or (lower(UserBookmarkDescription)
    like lower(@tagName1) or lower(UserBookmarkDescription) like lower(@tagNameWithSpace1))) and b.ID in (
    select b.ID from bookmarking_bookmark as b left join bookmarking_bookmarktag as bt on b.ID=bt.BookmarkID left join bookmarking_tag as t on bt.TagID=t.TagID left join
    (select ub.BookmarkID as BookmarkID, ub.Name as UserBookmarkName,  ub.Description as UserBookmarkDescription, t.Name as TagName 
    from (select * from bookmarking_userbookmark as ub where ub.UserID=@userID) as ub 
    left join bookmarking_userbookmarktag as ubt on ub.UserBookmarkID=ubt.UserBookmarkID  left join bookmarking_tag as t on ubt.TagID=t.TagID) as ub on b.ID=ub.BookmarkID
    where (( lower(b.URL) like lower(@tagNameForUrlWithoutLastSlash2) ) or (lower(b.Name) like lower(@tagName2) or lower(b.Name) like lower(@tagNameWithSpace2))
    or (lower(b.Description) like lower(@tagName2) or lower(b.Description) like lower(@tagNameWithSpace2)) or (lower(t.Name) like lower(@tagName2)) or (lower(t.Name)
    like lower(@tagNameWithSpace2)) or....

    среднее время выполнения 30 секунд

    arusanov, 14 Марта 2011

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