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

    +61

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    HRESULT ReInitCOMAsSTA()
    	{
    		__AUTO_TRACE__(__FUNCTION__)
    		HRESULT hr = E_FAIL;
    		while (!SUCCEEDED(hr = CoInitialize(NULL)))
    		{
    			CoUninitialize(); // мочим КОМ, пока не даст нам проинициализироваться однопоточно
    		}	
    		return hr;
    	}

    laMer007, 13 Апреля 2015

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

    +169

    1. 1
    2. 2
    3. 3
    Пора вооружатся.
    Если кто не знает/забыл оружейка тут  
    http://gvforum.ru/viewtopic.php?id=1173

    Vasiliy, 13 Апреля 2015

    Комментарии (1601)
  3. Ruby / Говнокод #17988

    −80

    1. 1
    current_time = (DateTime.parse(DateTime.now.to_s)).strftime('%d.%m.%Y %H:%M:%S')

    суровые трудовыебудни

    strax, 13 Апреля 2015

    Комментарии (841)
  4. PHP / Говнокод #17987

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if ($prod<>"" and $id=="") include ("1.html");
    if ($id<>"" and $prod=="" ) include ("111.html");
    if ($sert<>"") include ("1111.html");
    if ($sert1<>"") include ("111011.html");
    if ($sert2<>"") include ("1110112.html");
    if ($s<>"") include ("11111.html");
    if ($name<>"") include ("$name.html");

    лаконичный названия подключаемых файлов

    noganno, 13 Апреля 2015

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

    +53

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    for(;!isCancel(); [&]{
    			for(int i = 0; (i < settrings.getValue(Settings::Updater::Period, 60)) && !isCancel(); ++i)
    			{
    				Concurrency::wait(1000);
    			}}())
    			{

    laMer007, 13 Апреля 2015

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

    +163

    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
    if (in_array($id, $_SESSION['id']))
    {
    	for ($j = 0; $j < count($_SESSION['id']); $j++)
    	{
    		if ($_SESSION['id'][$j] == $id)
    		{ $num_el = $j;}
    	}
    
    		$_SESSION['count'][$num_el] += $count;
    		$_SESSION['summa'][$num_el] += $cost*1*$count;
    		$_SESSION['summa_all'] += $cost*1*$count;
    		$_SESSION['count_all'] += $count;
    }
    else
    {
    	$_SESSION['id'][] = $id;
    	$_SESSION['count'][] = $count;
    	$_SESSION['summa'][] = $cost*1*$count;
    	$_SESSION['summa_all'] += $cost*1*$count;		
    	$_SESSION['count_all'] += $count;	
    }

    Главное не забыть умножить на единицу

    roocster, 13 Апреля 2015

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

    −137

    1. 1
    2. 2
    3. 3
    4. 4
    Если НЕ ЗаполненНаОснованииДокумента Тогда
        ИнициализироватьУсловияПродаж();
    КонецЕсли;
    ИнициализироватьУсловияПродаж();

    Чтоб наверняка.
    Типовая УТ 11.1.10.94, документ РеализацияТоваровУслуг, модуль объекта, стр.819-822

    dawgcha, 13 Апреля 2015

    Комментарии (89)
  8. C# / Говнокод #17983

    +130

    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
    // Заполняем датагрид
    var q = from i in currentData select new { i.IDRFData, i.IDRowData, i.Description, i.SumVal };
    dgMain.DataContext = q.ToList();
    
    // Получаем оттуда выделенный элемент
    object DR = dgMain.SelectedValue;
    
    var TypedData = Cast(DR, new
    {
    	IDRFData = default(Guid),
    	IDRowData = default(Guid),
    	Description = default(string),
    	SumVal = default(double),
    });
    
    // Кстати, функция Cast делает следующее:
    public static T Cast<T>(object obj, T type)
    {
    	return (T)obj;
    }

    Это извращение сделано вместо того, чтобы просто создать отдельный класс для записи датагрида.
    Я даже не представляю, в каком состоянии надо быть, чтобы такое написать.

    yamamoto, 13 Апреля 2015

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

    +135

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private void tbMain_PreviewTextInput(object sender, TextCompositionEventArgs e)
    {
    	TextBox thisTextBox = (sender as TextBox);
    	e.Handled = (!(Char.IsDigit(e.Text, 0) && !((thisTextBox.Text.IndexOf("-") == 0) && thisTextBox.SelectionStart == 0))) &&
    		((e.Text.Substring(0, 1) != "-") || (thisTextBox.Text.IndexOf("-") == 0) || thisTextBox.SelectionStart != 0) &&
    		((e.Text.Substring(0, 1) != ".") || (thisTextBox.Text.IndexOf(".") != -1) || (thisTextBox.SelectionStart == 0) || (!Char.IsDigit(thisTextBox.Text.Substring(thisTextBox.SelectionStart - 1, 1), 0)) || ((thisTextBox.Text.IndexOf(",") != -1))) &&
    		((e.Text.Substring(0, 1) != ",") || (thisTextBox.Text.IndexOf(",") != -1) || (thisTextBox.SelectionStart == 0) || (!Char.IsDigit(thisTextBox.Text.Substring(thisTextBox.SelectionStart - 1, 1), 0)) || ((thisTextBox.Text.IndexOf(".") != -1)));
    	
    }

    yamamoto, 13 Апреля 2015

    Комментарии (0)
  10. Pascal / Говнокод #17981

    +98

    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
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    flag:=true;
    
    if keyList = nil then
    begin
    new(keyList);
    new(keylist^.HisTerms);
    new(keylist^.hisChapter);
    keyList^.value:= HashFunction(edit1.Text);
    keylist^.hisChapter^.number:=strtoint(edit2.Text);
    keylist^.HisTerms^.TheTerm:=edit1.Text;
    keylist^.HisTerms^.hisPage:=keylist^.hisChapter;
    keylist^.HisTerms^.hisKey:=keylist^.value;
    keylist^.hisChapter^.nextPage:=nil;
    keylist^.HisTerms^.nextTerm:=nil;
    memo1.Lines.Add(edit1.Text + ' (' + edit2.Text+')');
    end
    else
    begin
    keyTemp:=keylist;
    temp:=HashFunction(edit1.Text);
    if keytemp^.value = temp then
    begin
    termtemp:=keytemp^.HisTerms;
    chaptertemp:=keytemp^.hisChapter;
    while termtemp^.nextTerm<> nil do
    termtemp:=termtemp^.nextTerm;
    while chaptertemp^.nextPage<> nil do
    chaptertemp:=chaptertemp^.nextPage;
    new(termtemp^.nextTerm);
    new(chaptertemp^.nextPage);
    chaptertemp^.nextPage^.number:=strtoint(edit2.Text);
    termtemp^.nextTerm^.TheTerm:=edit1.Text;
    termtemp^.nextTerm^.nextTerm:=nil;
    chaptertemp^.nextPage^.nextPage:=nil;
    termtemp^.hisKey:=HashFunction(edit1.Text);
    termtemp^.hisPage:=chaptertemp^.nextPage;
    flag:=false;
    end
    else
    keytemp:=keytemp^.NextKey;
    if not(flag) then
    begin
    keytemp:=keylist;
    while keytemp^.NextKey<>nil do
    keytemp:=keytemp^.NextKey;
    new(keytemp^.NextKey);
    new(keytemp^.NextKey^.HisTerms);
    new(keytemp^.NextKey^.hisChapter);
    keytemp^.NextKey.value:=HashFunction(edit1.Text);
    keytemp^.NextKey^.hisChapter^.nextPage:=nil;
    keytemp^.NextKey^.HisTerms^.nextTerm:=nil;
    keytemp^.NextKey^.hisChapter^.number:=strtoint(edit2.Text);
    keytemp^.NextKey^.HisTerms^.TheTerm:=edit1.Text;
    keytemp^.NextKey^.HisTerms^.hisPage:=keytemp^.NextKey^.hisChapter;
    keytemp^.NextKey^.HisTerms^.hisKey:=HashFunction(edit1.Text);
    
    end;

    Создание хэш-таблицы терминов и добавление каждому термину под-термина.

    Toha, 12 Апреля 2015

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