1. SQL / Говнокод #5526

    −864

    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
    select
    	distinct q.subject as subject,
    	q.notification_body as notification_body,
    	q.record_id as notification_id,
    	q.notif_type as notification_type,
    	pkgxyz.sql_queue_addr_set_status(a.record_id, 4)
    from
    	NOTIF_QUEUE q,
    	NOTIF_QUEUE_address a 
    where 
    	q.transport = 1234567890 and q.status = 1 and q.record_id = a.notification_id and a.status = 1;
    	
    	
      function sql_queue_addr_set_status(pRecord_id number, pValue number) return int as
        pragma autonomous_transaction;
      begin
        Trace('sql_queue_addr_set_status', '[pRecord_id='||pRecord_id||', pValue='||pValue||'] start');
        update notif_queue_address a
          set a.status = pValue
          where a.record_id = pRecord_id;
        commit;
        Trace('sql_queue_addr_set_status', '[]end');
        return 1;
      end;

    "У нас есть только один шанс получить эти данные" - как бы говорит нам этот кусок г.. кусок кода.
    В селекте (строки 1-11) мы получаем данные, и сразу вызываем хранимую процедуру (строки 14-24), которая изменяет выбранные данные. Если запустим этот запрос ещё раз, то он ничего не вернёт.

    Имена и айдишники изменены, что бы не выдать компанию, в которой это написано.

    red_falcon, 04 Февраля 2011

    Комментарии (6)
  2. Java / Говнокод #5525

    +69

    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
    for(int i=0;i<1000;i++){
    			MyThread t = new MyThread();
    			t.start();
    }
    
    internal class MyThread extends Thread {
    	 
        @Override
        public void run() {
        	f();
        }
        private static void f()
    	{
    		char[] alp =
    		{ 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f',
    				'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c', 'v', 'b', 'n', 'm'};
    		
    		try
    		{
    			String name = "";
    			String text = "";
    			Random r = new Random();
    			
    			for(int i = 1;i<10;i++)
    			{
    				name += alp[r.nextInt(alp.length)];
    			}
    			
    			for(int i = 1;i<1000;i++)
    			{
    				text += alp[r.nextInt(alp.length)];
    			}
    			
    			FileWriter fstream = new FileWriter("c:/mydak/"+name+".txt");
    			BufferedWriter out = new BufferedWriter(fstream);
    			out.write("Mydak, ti eto dolgo budesh isKATb "+text);
    			out.close();
    			f();
    
    		} catch (IOException e)
    		{
    			e.printStackTrace();
    		}
    	}
    }

    Не говнокод, но улыбку вызывает =)
    По ТЗ программа "работает не корректно. Исправить." вот как оно бывает..

    KirAmp, 04 Февраля 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    std::ostringstream s;
    for( std::list< Candidate* >::iterator it = order_by_priority.begin(); 
    		it != order_by_priority.end(); ){
    	s << (*it)->id << "/" << priorityDesc((*it)->priority());
    	it++;
    	if( it!= order_by_priority.end() )
    		s << ", ";
    }
    return s.str();

    Странное обращение с циклом for.

    panter_dsd, 04 Февраля 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    std::list< Candidate* >::iterator it = order_by_priority.begin();
    	while(  ( speed < (*it)->minspeed ) || ( speed > (*it)->maxspeed ) ){
    		++it;
    		if( it == order_by_priority.end() )
    			break;
    	}
    	if( it == order_by_priority.end() )
    		return NULL;
    	return *it;

    Про for забыли, по 2 раза проверяем...

    panter_dsd, 04 Февраля 2011

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

    +114

    1. 1
    2. 2
    var panel = (StackPanel)((FrameworkElement)button.Parent).FindName("addContactPanel");
    panel.Visibility = Visibility.Collapsed;

    вместо простого addContactPanel.Visibility = Visibility.Collapsed;

    McElroy, 04 Февраля 2011

    Комментарии (2)
  6. JavaScript / Говнокод #5521

    +167

    1. 1
    var war;

    Объявляем войну :)
    Не говнокод, но весело.

    fuckyounoob, 04 Февраля 2011

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

    +114

    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
    public IQueryable<Log> Select(Context context)
            {
                // Return list of entities
                return (from l in context.Logs select l);
            }
    
            /// <summary>
            /// Fetch page from Log table
            /// </summary>
            /// <param name="nStartRowIndex">Starting index of rows to fetch</param>
            /// <param name="nMaxRows">Max number of rows</param>
            /// <returns>IEnumerable of Log</returns>
            public List<Log> SelectPage(int nStartRowIndex, int nMaxRows, 
                                        string strProperty, string strKeyword,
                                        string strSort, string strSortDirection, 
                                        out int nTotalCount)
            {            
                using (Context context = new Context())
                {
                    var q = Select(context).Take (1000);
                 }
          }

    Коллега на работе наворотил...

    Katsy, 04 Февраля 2011

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

    +146

    1. 1
    2. 2
    3. 3
    char odin=1,odin2=1;
    if (&odin!=&odin2)
            Memo1->Lines->Add("FUCK!");

    я новичок, и после 3-й надписи FUCK! в Memo1 мой моск взорвалсо.
    помните меня таким, каким я был...

    myrik, 04 Февраля 2011

    Комментарии (9)
  9. Java / Говнокод #5518

    +71

    1. 1
    return res != null ? res : null;

    тавтология :)

    aleks_dsp, 03 Февраля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $args['section'] = (int)$_POST['section'];
    
    $args['type'] = 0;
    
    if ($args['section'] == 1117){$args['section'] = 7;$args['type'] = 1;}
    if ($args['section'] == 2227){$args['section'] = 7;$args['type'] = 2;}
    if ($args['section'] == 11111){$args['section'] = 11;$args['type'] = 1;}
    if ($args['section'] == 22211){$args['section'] = 11;$args['type'] = 2;}

    Magic numbers в действии

    dew2, 03 Февраля 2011

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