1. Список говнокодов пользователя leon_mz

    Всего: 8

  2. C# / Говнокод #19563

    +5

    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
    int tries = 0;
    while (true)
    {
    	try
    	{
    		DoSomething();
    	}
    	catch
    	{
    		if (++tries > 3)
    			throw;
    	}
    }

    Оригинальный способ попытаться выполнить некий код, давая ему на это N попыток , а только потом упасть с ошибкой.

    leon_mz, 02 Марта 2016

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

    +3

    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
    std::string sql = "INSERT INTO digest_test_record (set_id, ref_digest, cand_digest, vdt_cfg_warn, digest_cfg_warn, "
        "ref_duration, ref_cardinality, ref_dispersion, "
        "cand_duration, cand_cardinality, cand_dispersion, "
        "cardinality, difference, red_difference, ext_difference, "
        "inv_cardinality, inv_difference, inv_red_difference, inv_ext_difference,
        "timing, lib_version) SELECT 0, "
        "ROW($1, $2, $3, $4, $5, $6, $7, $8)::digest_info, "
        "ROW($9, $10, $11, $12, $13, $14, $15, $16)::digest_info,"
        "$17, $18, ",
        "$19, $20, $21, "
        "$22, $23, $24, "
        "$25, $26, $27, $28, "
        "$29, $30, $31, $32, "
        "$33, ROW($34, $35, $36, make_date($37, $38, $39), $40)::lib_version_info";
    
        cn.prepare("insert", sql);
    
        xact.prepared("insert")
        (ref_digest_info.src_width)(ref_digest_info.src_height)(ref_digest_info.src_fps)(ref_digest_info.src_duration)
            (ref_digest_info.vdt_duration)(ref_digest_info.cardinality)(ref_digest_info.has_flags)(ref_digest_info.src_filename)
        (cand_digest_info.src_width)(cand_digest_info.src_height)(cand_digest_info.src_fps)(cand_digest_info.src_duration)
            (cand_digest_info.vdt_duration)(cand_digest_info.cardinality)(cand_digest_info.has_flags)(cand_digest_info.src_filename)
        (results.vdt_cfg_warn)(results.digest_cfg_warn)
        (results.ref_duration)(results.ref_cardinality)(results.ref_dispersion)
        (results.cand_duration)(results.cand_cardinality)(results.cand_dispersion)
        (results.cardinality)(results.difference)(results.red_difference)(results.ext_difference)
        (results.inv_cardinality)(results.inv_difference)(results.inv_red_difference)(results.inv_ext_difference)
        ((double)timing / CLOCKS_PER_SEC)(li.main_ver)(li.sub_ver)(li.revision)(li.year)(li.month)(li.day)(li.platform).exec();

    Мои глаза.... Яркий пример использования нативного pqxx

    leon_mz, 01 Марта 2016

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

    −2

    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
    //------------------------------------------------------------------------------
    // <auto-generated>
    //    This code was generated from a template.
    //
    //    Manual changes to this file may cause unexpected behavior in your application.
    //    Manual changes to this file will be overwritten if the code is regenerated.
    // </auto-generated>
    //------------------------------------------------------------------------------
    
    using System.Collections.ObjectModel;
    using System.Linq;
    
    namespace DemoFeb2014.DataContexts
    {
        using System;
        using System.Collections.Generic;
        
        public partial class Author
        {
           ....
    
      public ICollection<Tuple<MusicalWork, string>> Author2MusicalWorkParsed
            {
                get
                {
                   ...
                }
            }
            
        }
    }

    Спасибо коллегам! Благодаря только им можно потратить полчаса времени на розыск коммита в котором пропал метод Author2MusicalWorkParsed и выяснения причин того, почему же он пропал...
    Видимо комментарии в начале файла недостаточно "жирные".

    leon_mz, 12 Февраля 2016

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

    +3

    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
    public class Logger
    	{
    		public static string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.log");
    
    		public static void Write(string message)
    		{
    			using (var sw = File.AppendText(filePath))
    			{
    				sw.WriteLine(DateTime.Now);
    				sw.WriteLine(message);
    				sw.WriteLine();
    				sw.Flush();
    			}
    		}
    
    		public static void Write(Exception exception)
    		{
    			using (var sw = File.AppendText(filePath))
    			{
    				sw.WriteLine(DateTime.Now);
    				sw.WriteLine("ERROR:");
    				sw.WriteLine(exception.Message);
    				sw.WriteLine(exception.StackTrace);
    				sw.WriteLine();
    				sw.Flush();
    			}
    		}
    	}

    Нафига готовые решения? Вот - образец велосипедостроения! (И, тссс! Не вздумайте использовать его в многопоточной среде ;) А именно там он и используется по факту :) )

    PS угадайте какой фортель выкинет сеё чудо при race condition

    leon_mz, 18 Ноября 2015

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

    −11

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (trackFileInfo != null)
                        {
                            string formattedName = string.Format("{0) - {1}{2}", index++, trackTitle.Tidy().Translite(), trackFileInfo.Extension);
                            if (formattedName.Length > 128)
                                formattedName = formattedName.Substring(0, 128) + "... " + trackFileInfo.Extension;
    
    ...

    Найдите причину FormatException ;)

    leon_mz, 20 Октября 2015

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

    +7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public bool IsInRange(string ip, string cidrMask)
    {
                string[] parts = cidrMask.Split('/');
                int iIp = IPAddress.Parse(parts[0].Trim()).GetHashCode();
                int iCidr = IPAddress.Parse(ip.Trim()).GetHashCode();
                int iCidrMask = IPAddress.HostToNetworkOrder(-1 << (32 - int.Parse(parts[1].Trim())));
                return ((iIp & iCidrMask) == (iCidr & iCidrMask));
    }

    Финт ушами - превращение IPv4 в Int32 через вызов GetHashCode

    leon_mz, 14 Октября 2015

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

    +142

    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
    private static string AddStr(string s1, string s2)
    		{
    			string result;
    			if (s1 == string.Empty)
    			{
    				result = s2;
    			}
    			else
    			{
    				if (s2 == string.Empty)
    				{
    					result = s1;
    				}
    				else
    				{
    					result = s1 + " " + s2;
    				}
    			}
    			return result;
    		}

    Код - бессмысленный и беспощадный

    leon_mz, 06 Сентября 2013

    Комментарии (73)
  9. SQL / Говнокод #11854

    −121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    SELECT ISNULL(SUM(1), 0) 
     FROM Stat_DailySnapshotPurchases
     WHERE 1=1
      AND ForDate BETWEEN '2012-08-01' AND '2012-09-14'
      AND ItemType = 4

    Оригинальный способ подсчета количества строк

    leon_mz, 01 Октября 2012

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