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

    +131

    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
    private void аффинныйШифрToolStripMenuItem_Click(object sender, EventArgs e)
    {
                foreach (Form childForm in MdiChildren)
                {
                    childForm.Close();
                }
                foreach (Form f in this.MdiChildren)
                {
                    return;
                }
                Affiniy af = new Affiniy();
                af.TopLevel = false;
                af.Show();
                tabPage1.Controls.Add(af);
                af.WindowState = System.Windows.Forms.FormWindowState.Maximized;
    }

    Попросили посмотреть код. 15 методов с различными простейшими шифрами, но чудо foreach -> return, присутствует в каждом. И не лень кому-то было...

    MoN, 26 Февраля 2014

    Комментарии (42)
  2. C# / Говнокод #14984

    +135

    1. 1
    2. 2
    3. 3
    public static void InsertSalesPerson(
                        ref int? SalesPersonID, int DealerProfileID, int DealerID, int? WebSiteID, string LastName, string FirstName, string Phone, string Email, string Password,
                        int AccessLevelID, int? StatusID, int? LanguageID, int? TimeZoneID, string Title, string SpokenLanguages, bool IsShownInWebSite, bool IsUserInWebSite, string UserName)

    agrynco, 26 Февраля 2014

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

    +130

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    catch (Exception e)
                {
                    CommonAPI.SetErrorApp(0, MethodBase.GetCurrentMethod().DeclaringType.Name + "." + MethodBase.GetCurrentMethod().Name, e.Message);
    #if DEBUG
                    throw e;
    #else
                    return 0;
    #endif
                }

    agrynco, 26 Февраля 2014

    Комментарии (2)
  4. Си / Говнокод #14982

    +128

    1. 1
    #define STUPID_ACCELF_TEXT_SHIT

    laMer007, 26 Февраля 2014

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

    +46

    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
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    //В хедере
        QVector<double> stateStack;
    //Сохраняем
        stateStack.push_back((double)renderInclusionsAs3DMeshSpheres);
        stateStack.push_back((double)transparencyForClosestSidePolies);
        stateStack.push_back((double)renderFEMGrid);
        stateStack.push_back((double)NEST_results_detail_per_unit);
        stateStack.push_back((double)sourceLineActive);
        stateStack.push_back((double)renderScale);
        stateStack.push_back((double)c2DZoom1To1);
        stateStack.push_back((double)render2DInclusions);
        stateStack.push_back((double)render3DInclusions);
        stateStack.push_back((double)renderNESTResults);
        stateStack.push_back((double)renderFEAResults);
        stateStack.push_back((double)NEST_anumTime);
        stateStack.push_back((double)isAnimRun);
        stateStack.push_back((double)NEST_timeIterToRender);
        stateStack.push_back((double)NEST_RenderResultsIn3D);
        stateStack.push_back((double)NEST_renderTestPoints);
        stateStack.push_back((double)nestNewResults);
        stateStack.push_back((double)fibers_renderFormedRegions);
        stateStack.push_back((double)sourceLineStarted);
        stateStack.push_back((double)renderSourceLine);
        stateStack.push_back((double)heatQuadsModifyMode);
        stateStack.push_back((double)renderTopHeats);
        stateStack.push_back((double)sliceModifyMode);
        stateStack.push_back((double)useSlicePlane);
        stateStack.push_back((double)showSlicedPart);
        stateStack.push_back((double)cRenderMenuOpended);
        stateStack.push_back((double)cForbidRenderResultsOverLayers);
        stateStack.push_back((double)renderCoordLines);
        stateStack.push_back((double)renderDimensions);
        stateStack.push_back((double)renderLimits);
        stateStack.push_back((double)cResTransparency);
        stateStack.push_back((double)cRenderResultsOverLayers);
        stateStack.push_back((double)cActiveLayer);
        stateStack.push_back((double)renderMiniMapAtTop);
        stateStack.push_back((double)subCompositeMode);
        stateStack.push_back((double)subCompositeMapRendering);
        stateStack.push_back((double)fibersRenderable);
        stateStack.push_back((double)renderFibersAsMesh);
        stateStack.push_back((double)droplets_detailedSpheres);
        stateStack.push_back((double)cViewType);
    //Загружаем
     renderInclusionsAs3DMeshSpheres   =(bool)stateStack[0];
        transparencyForClosestSidePolies=        stateStack[1];
        renderFEMGrid=(bool)                     stateStack[2];
        NEST_results_detail_per_unit=            stateStack[3];
        sourceLineActive=(bool)                  stateStack[4];
        renderScale=(bool)                       stateStack[5];
        c2DZoom1To1=(bool)                       stateStack[6];
        render2DInclusions=(bool)                stateStack[7];
        render3DInclusions=(bool)                stateStack[8];
        renderNESTResults=(bool)                 stateStack[9];
        renderFEAResults=(bool)                  stateStack[10];
        NEST_anumTime=                           stateStack[11];
        isAnimRun=(bool)                         stateStack[12];
        NEST_timeIterToRender=                   stateStack[13];
        NEST_RenderResultsIn3D=(bool)            stateStack[14];
        NEST_renderTestPoints=(bool)             stateStack[15];
        nestNewResults=(bool)                    stateStack[16];
        fibers_renderFormedRegions=(bool)        stateStack[17];
        sourceLineStarted=(bool)                 stateStack[18];
        renderSourceLine=(bool)                  stateStack[19];
        heatQuadsModifyMode=(bool)               stateStack[20];
        renderTopHeats=(bool)                    stateStack[21];
        sliceModifyMode=(bool)                   stateStack[22];
        useSlicePlane=(bool)                     stateStack[23];
        showSlicedPart=(bool)                    stateStack[24];
        cRenderMenuOpended=(bool)                stateStack[25];
        cForbidRenderResultsOverLayers=(bool)    stateStack[26];
        renderCoordLines=                        stateStack[27];
        renderDimensions=(bool)                  stateStack[28];
        renderLimits=                            stateStack[29];
        cResTransparency=                        stateStack[30];
        cRenderResultsOverLayers=(bool)          stateStack[31];
        cActiveLayer=                            stateStack[32];
        renderMiniMapAtTop       =(bool)         stateStack[33];
        subCompositeMode         =(bool)         stateStack[34];
        subCompositeMapRendering =(bool)         stateStack[35];
        fibersRenderable=(bool)                  stateStack[36];
        renderFibersAsMesh=(bool)                stateStack[37];
        droplets_detailedSpheres=                stateStack[38];
        cViewType=                               stateStack[39];

    Структуры для педиков.

    Abbath, 25 Февраля 2014

    Комментарии (18)
  6. Ruby / Говнокод #14953

    −131

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    def sum_all_orders
        sum = 0
        Order.where(user_id: self.id).each do |order|
          sum = sum + order.total_sum
        end
        sum
      end
    
      # вместо
      def sum_all_orders
         orders.sum(&:total_sum)
      end

    В коде магазина, таких ляпов полон проект. Задрался dd жмакать.
    Так сложно API active_support почитать???

    alexes_dev, 25 Февраля 2014

    Комментарии (14)
  7. PHP / Говнокод #14951

    +151

    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
    $s = $this->getAdapter()->select()->from(array('b' => $this->info('name'), array(
       'text',
       'link',
       'image',
                'show_register',
    
    
      )))->joinInner(array('s' => 'banner_size'), 's.id=b.size_id', array('x', 'y'))
       ->where('b.show_it = ?', 1)
       ->where('s.x = ?', $sizeX)
       ->where('s.y = ?', $sizeY)
       ->limit(1)
       ->order('RAND()');
    
    
            if (!empty($uid)){
                $s->where('(b.show_register= ?, 1)' OR '(b.show_register= ?, 0)');
            } else {
                $s->where('(b.show_register= ?, -1)' OR '(b.show_register= ?, 0)');
    
            }
          echo $s-> __toString();
          //  var_dump(!empty($uid));
      return $this->getAdapter()->fetchRow($s);

    мега крутое условие
    $s->where('(b.show_register= ?, 1)' OR '(b.show_register= ?, 0)');

    kolyabres, 25 Февраля 2014

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

    +131

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // Сериализуем
    var outStream = new MemoryStream();
    serializer.Serialize(outStream, storedSplitInfo);
    string output = outStream.ToArray().Aggregate(string.Empty, (current, simbol) => current + (char) simbol);
    
    ...
    
    // Десериализуем
    var serializer = new XmlSerializer(typeof(StoredSplitInfo));
    return (StoredSplitInfo)serializer.Deserialize(new MemoryStream(docNumber.SplitInfo.Select(c => (byte)c).ToArray()));

    Вот таким изощренным способом мы умеем сериализовывать объекты в XML

    Govnokoder555, 25 Февраля 2014

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

    +37

    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
    long* Service::qByteToLongArray(QByteArray qba, long r)
    {
        long* larr = new long[r];
    
        char *carr;
        carr = (char*)larr;
    
        int len = r * sizeof(long);//length in bytes
    
        for(int i=0; i < len; i++)
            carr[i] = qba.at(i);
    
        return larr;
    }
    
    QByteArray Service::longToQByteArray(long **larr2, long r, long c)
    {
        QByteArray qba;// = new QByteArray();
    
        char **carr2;
        carr2 = (char**)larr2;
    
        int rlen = c * sizeof(long);//length of row in bytes
    
        for(int i=0; i < r; i++){
            qba.append(carr2[i], rlen);//add next row of matrix to the QByteArray
        }
    
        return qba;
    }

    Нашли это, только когда собрали под x64.

    Abbath, 25 Февраля 2014

    Комментарии (16)
  10. PHP / Говнокод #14942

    +152

    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
    ...
    ## $config['components'] - массив компонентов(>25) для Yii
    foreach ($config['components'] as $name => $component) {
        if ($name != 'db') {
            unset($config['components'][$name]);
        }
    }
    ...
    
    # потом был баг фикс 
    foreach ($config['components'] as $name => $component) {
        if ($name != 'db' && $name != 'db_stats') {
            unset($config['components'][$name]);
        }
    }

    Сделал один из наших программистов, потом другой добавил свое, и уже я , с утра, в безсознательном состоянии, хотел было добавить ещё условие " && $name != 'format'" , но увидев результат, в голове бзынкнуло - WTF I AM DOING!!!
    cделал так
    $config['components'] = array_intersect_key($config['components'], array('db'=>1, 'db_stats'=>1, 'format' => 1));

    xakki, 25 Февраля 2014

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