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

    +134

    1. 1
    Console.WriteLine("Ставь лайк если любиш сваю маму");

    Вот ето я хитро зделал никто ни паставит дизлайк азаззахзщшщхзашщвщаа)))0)0

    PragramistOtBoga, 09 Июля 2013

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

    +135

    1. 1
    2. 2
    Участник, прошу тебя: не поленись, пройди по анкетам и поставь всем минусы.
    Минуисуя участников, ты помогаешш обществу снижать ЧСВ.

    Участник, прошу тебя: не поленись, пройди по анкетам и поставь всем минусы.
    Минуисуя участников, ты помогаешш обществу снижать ЧСВ.

    Stertor, 09 Июля 2013

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

    +128

    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
    static readonly Regex binary = new Regex("^[01]{1,32}$", RegexOptions.Compiled);
    static void Main() {
        Test("");
        Test("01101");
        Test("123");
        Test("0110101101010110101010101010001010100011010100101010");
    }
    static void Test(string s) {
        if (binary.IsMatch(s)) {
            Console.WriteLine(Convert.ToInt32(s, 2));
        } else {
            Console.WriteLine("invalid: " + s);
        }
    }

    http://stackoverflow.com/questions/1271562/binary-string-to-integer
    Мучает вопрос. Зачем ставить регулярку? Почему бы просто не словить FormatExeption?

    neeedle, 09 Июля 2013

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

    +134

    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
    using System;
    using System.Security.Cryptography;
    
    namespace sha1_calc
    {
        class Program
        {
            static void Main(string[] args)
            {
                SHA1 sha = new SHA1CryptoServiceProvider();
                foreach (var fname in args)
                {
                    Console.WriteLine("file: " + fname);
                    try
                    {
                        System.IO.FileStream fs = System.IO.File.Create(fname);
                        byte [] res = sha.ComputeHash(fs);
                        fs.Close();
                        Console.Write("0x");
                        foreach (var i in res)
                        {
                            Console.Write(i.ToString("X"));
                        }
                        Console.WriteLine();
                        Console.WriteLine("---------------------------------");
                    }
                    catch(Exception e)
                    {
                        Console.WriteLine("error: " + e);
                    }
                }
                Console.ReadKey();
            }
        }
    }

    Скачал парочку образов и решил проверить их чексуммы. Протестировал программу на скачанных файлах. Удивился, почему же у них хеши одинаковые?

    Xom94ok, 05 Июля 2013

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

    +137

    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
    // "Красная Шапочка, ты снова - девочка. Тимур и его команда" :-)
    
    // Почему-то в случае типа picture сюда передавалось вместо GUID-а заглушки такая вот строковая константа
    // так как надо было срочно делать, было сделано так. Потом было исправлено, но удалять эту строчку страшно.
    // Вдруг ещё работать перестанет.
    
    // TODO: Исключить из backup коллекцию colAbbreviation
    // Все объекты в ней бэкапятся внутри DataDeduplication.SaveAbbreviation
    // Или не надо? Лучше синица в руках, чем утка под кроватью... :-)
    // Ну-ка, ну-ка... Может, она раньше выполнялась, и об этом что-то известно?
    
    // Вызываем клиента в другом потоке, иначе - фигня-с...
    
    // Кажется "добрые люди" уже удалили этот классификатор...
    
    // Начать их переделывать - рухнет что-нить в другом месте, 
    // а низзя - скоро нужна рабочая версия... :-)
    
    // Таким вот финтом ушами(из-за бага) заставляем перейти фокус на последнюю строку :-)
    
    // к сожалению - Z-Order окон из WinForms недоступен - придется запоминать только активное окно
    //(можно конечно было прикрутиться к WinAPI - но не кошерно это :-) )
    
    // God mode :-)
    
    // Пытаемся получить "человеческий" sid для ADObject
    
    // Спасибо дата-провайдеру Oracle за счастливое детство и невозможность попользоваться
    // параметрами при сложном запросе с произвольным размещением параметров в запросе :-(
    
    // нехорошо так делать - но переписывать форму редактирования позиции пока не будем -
    // может что нибудь отъехать перед сдачей :-(
    
    /// <summary>
    /// Очень грязный хак - для того, чтобы хоть как-то заставить грид отобразить
    ///"+" для строк слева
    /// </summary>
    void DirtyHack()

    Продакшен-код. Комментарии

    dormendo, 05 Июля 2013

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

    +124

    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
    // System.Web.Security.FormsAuthentication
    /// <summary>Returns the redirect URL for the original request that caused the redirect to the login page.</summary>
    /// <returns>A string that contains the redirect URL.</returns>
    /// <param name="userName">The name of the authenticated user. </param>
    /// <param name="createPersistentCookie">This parameter is ignored.</param>
    public static string GetRedirectUrl(string userName, bool createPersistentCookie)
    {
    	if (userName == null)
    	{
    		return null;
    	}
    	return FormsAuthentication.GetReturnUrl(true);
    }

    http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication. getredirecturl.aspx
    Разработчики ASP.NET'а опять доставляют... И не лень было столько параметров делать, а потом ещё и описывать...

    TauSigma, 04 Июля 2013

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

    +117

    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
    if (!authorized)
    {
        // No, "I'm a teapot" is not what we really want, but the BuildMaster security module will
        // replace it with a 401 (which we actually want)
        context.Response.StatusCode = 418;
        context.Response.Write("Not authorized");
        context.Response.AddHeader("WWW-Authenticate", "Basic realm=\"BuildMaster URL Trigger\"");
        context.ApplicationInstance.CompleteRequest();
        return;
    }
    
    ...
    
    context.EndRequest += (s,e) =>
    {
        HttpApplication app = (HttpApplication)s;
        if (app.Context.Response.StatusCode == 418)
            app.Context.Response.StatusCode = 401;
    }

    http://blog.inedo.com/2010/10/12/http-418-im-a-teapot-finally-a-%E2%80%9Clegitimate%E2%80%9D-use/

    Костыль для обхода "шибко умного" поведения ASP.NET Forms Authentication, который меняет код 401 на 302-перенаправление на форму логина. А разработчику нужен именно 401.

    someone, 04 Июля 2013

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

    +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
    public object Clone()
    {
    	using (MemoryStream stream = new MemoryStream())
    	{
    		BinaryFormatter formatter = new BinaryFormatter();
    		formatter.Serialize(stream, this);
    		stream.Position = 0;
    		ColLink result = (ColLink)formatter.Deserialize(stream);
    		result.Id = IdentityManager.GetId();
    		result.GUID = Guid.NewGuid();
    		result.setEdited();
    		result.setCreated();
    		return result;
    	}
    }

    Клонирование

    dormendo, 04 Июля 2013

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

    +110

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public void UpdateCollection()
    {
        object l = new object();
        lock (l)
        {
            // Обновляем коллекцию
        }
    }

    Эксклюзивная блокировка в действии

    dormendo, 03 Июля 2013

    Комментарии (46)
  10. C# / Говнокод #13286

    +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
    try
    {
                    var ticketInfo = 
                        WebServicesRepository.XLoginInstance.XLoginTicketHandler(ticket.Ticket);
    
                    if (!(ticketInfo.Errors.Length > 0))
                        FormsAuthenticationUtility.SetAuthCookie(ticketInfo.UserID, ticketInfo.UserLogin, ticketInfo.UserPassword, ticketInfo.Email, false);
    
                    var profile =
                        AccountRepository.GetUserProfile(ticketInfo.Email, ticketInfo.UserPassword) ?? null;
                    var authForm =
                        new AuthenticateForm()
                        {
                            Login = profile.Login,
                            Password = profile.Password,
                            IsPersistent = true
                        };
                    AccountRepository.SignIn(authForm, ref errors);
                }
                catch(Exception e) 
                {
                    log.Error("Автоматическая авторизация", e); 
                };

    Наговнокодил на Asp.net )

    sladkijBubaleh, 02 Июля 2013

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