-
Лучший говнокод
- В номинации:
-
- За время:
-
-
+99.4
- 1
- 2
- 3
- 4
string date_format = DateTime.Now.ToString("dddd dd") + "th " + DateTime.Now.ToString("MMMM yyyy");
if (DateTime.Now.Day == 1 || DateTime.Now.Day == 21 || DateTime.Now.Day == 31) date_format = DateTime.Now.ToString("dddd dd")+"st "+DateTime.Now.ToString("MMMM yyyy");
else if (DateTime.Now.Day == 2 || DateTime.Now.Day == 22) date_format = DateTime.Now.ToString("dddd dd")+"nd "+DateTime.Now.ToString("MMMM yyyy");
else if (DateTime.Now.Day == 3 || DateTime.Now.Day == 23) date_format = DateTime.Now.ToString("dddd dd")+"rd "+DateTime.Now.ToString("MMMM yyyy");
DateTime formatting - don't try this at home!
bugotrep,
14 Января 2010
-
−190.8
- 1
- 2
- 3
- 4
if (flash.net.getClassByAlias("foo.bar.VO") == null){
flash.net.registerClassAlias("foo.bar.VO", foo.bar.VO);}
} catch (e:Error) {
flash.net.registerClassAlias("foo.bar.VO", foo.bar.VO); }
Так во флексовом фреймворке регистрируются алиасы для RPC классов... Нелогичность ситуации не сразу очевидна, поэтому опишу:
При загрузке модулей может возникнуть ситуация, когда алиас уже зарегистрирован для другого класса, поэтому нужно проверить, а не был ли алиас зарегистрирован раньше. Иначе, его нужно зарегистрировать. Исторически, этой проверки сначала не было, данный код - это фикс вышеописаной проблемы. Пытаясь разобраться, что же все-таки случилось - скорее всего "писатель" не подозревал, что getClassByAlias() не может вернуть null - а выяснил он это, когда код вывалился с ошибкой, вот он не долго думая завернул это все в try-catch...
Из мелких деталей: в рамках AS3 сравнение сложных типов с null - бессмысленная, и более того вредная операция, т.как выражение в условии всегда кастуется к Boolean, и компилятор не умеет делать оптимизации для таких случаев.
wvxvw,
08 Января 2010
-
+158.2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
<?php
/**
* @author DanxilLsPro.net16.net
* @copyright 2010
* @email [email protected]
*/
session_start();
//require_once "include/auth.php";
require_once "include/config.php";
require_once "include/function.php";
if(is_numeric($_GET['theme']) and $_GET['theme'] >= 1){
$theme = getTheme($_GET['theme']);
if($theme == false)show_error();
}
top("Просмотр всех тем - Знания - народу!",$style,$bg);
echo<<<FOO
<TD ROWSPAN=2 bgcolor="122745">
<p>
FOO;
if(is_numeric($_GET['theme']) and $_GET['theme'] >= 1)
showTheme($theme->name,$theme->time,$theme->author,$theme->text,$theme->voted,$theme->view,$style);
else
echo show_all_theme();
echo "</p>";
bottom("Знания принадлежат народу!",$style);
?>
Это полный как бе ппц. К чему приводят бессонные ночи в количестве более одной ^^
DanxilLs,
05 Января 2010
-
+64.4
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
int main(int argc, char **argv){
QApplication app(argc, argv);
QWebView view;
view.load(QUrl("http://www.linuxcertif.com/"));
view.show();
app.exec();
QWebSettings::setIconDatabasePath("/tmp");
QWebSettings::iconForUrl(QUrl("http://www.linuxcertif.com/"));
QIcon icon = QWebSettings::iconForUrl(QUrl("http://www.linuxcertif.com/"));
QPushButton button;
button.setIcon(icon);
button.show();
return app.exec();
}
смотрим на восьмую строку и понимаем, что она не делает ничего....
ошибка то мелкая, было бы не смешно, если тока этот код не распологался бы на багтрекере вебикита - https://bugs.webkit.org/show_bug.cgi?id=29440
еще в вебките забавно, что если в этом семпле седьмую строку переместить сразу за второй, семпл работает...
LuCiFer,
29 Декабря 2009
-
+127.8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
public static int not(this int i)
{
string i2 = Convert.ToString(i, 2),
res = "";
foreach (char c in i2)
res += c == '0' ? '1' : '0';
return Convert.ToInt32(res, 2);
}
Дело было вечером, делать было нечего....
psina-from-ua,
24 Декабря 2009
-
+133.4
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
/****************************************************************************
#if !(TARGET_IS_NT50_OR_LATER)
#error You need a Windows 2000 or later to run this stub because it uses these features:
#error /robust command line switch.
#error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
#error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
#endif
...
где-то глубоко
* Macros for targeted platforms
****************************************************************************/
#if (0x501 <= _WIN32_WINNT)
#define TARGET_IS_NT51_OR_LATER 1
#else
#define TARGET_IS_NT51_OR_LATER 0
#endif
#if (0x500 <= _WIN32_WINNT)
#define TARGET_IS_NT50_OR_LATER 1
#else
#define TARGET_IS_NT50_OR_LATER 0
#endif
#if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
#define TARGET_IS_NT40_OR_LATER 1
#else
#define TARGET_IS_NT40_OR_LATER 0
#endif
#if (0x400 <= WINVER)
#define TARGET_IS_NT351_OR_WIN95_OR_LATER 1
#else
#define TARGET_IS_NT351_OR_WIN95_OR_LATER 0
#endif
Код , сгенерированный компилятором MIDL для dll прокси/заглушки COM объекта.
VS2005 :)
4cppMan,
15 Декабря 2009
-
−178.5
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
def generate(_len = None, sg = None):
if sg == None:
sg = 'aoeuizxcvbn_msdfghjklqwrt_yp123456_7890'
if _len == None:
_len = random.Random().randint(1, 100)
s = ''
l = len(sg)
while _len > 0:
s += sg[random.Random().randint(0, l - 1)]
_len -= 1
return s
def loadsrvlists(file, srvlist = {}, prtlist = {}):
prtlist[0] = 5222
f = open(file)
while True:
s = f.readline().strip()
if s:
sr = s[:s.find(':')]
pr = s[s.find(':') + 1:]
if not sr in srvlist:
srvlist[sr] = True
if pr != prtlist[0]:
prtlist[sr] = int(pr)
else: break
return [srvlist, prtlist]
По конфам прошла волна спама, автор которого пиарил своего бота.
Это кусок кода из того бота.
А тут полный исходник. http://dumpz.org/15156/
Кто то может для себя почерпнуть нечто новое и неизведанное.
Apkawa,
14 Декабря 2009
-
+94.5
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
type
p = ^h;
h = record
no:word;
nx:p;
end;
var
n,k,i:word;
a,b:p;
begin
readln(n,k);
new(b);
a:=b;
for i:=1 to n-1 do
begin
a^.no:=i;
new(a^.nx);
a:=a^.nx;
end;
a^.no:=n;
a^.nx:=b;
i:=1;
while true do
begin
if a^.nx=a then break;
if i=k then
begin
b:=a^.nx;
a^.nx:=a^.nx^.nx;
dispose(b);
i:=1;
end;
a:=a^.nx;
inc(i);
end;
writeln(a^.no);
end.
"Гуманитарное" решение задачи Иосифа Флавия (гуглите).
Тут n - количество людей, убивают каждого k-нного, пока не останется один единственный выживший.
Lolwho,
11 Декабря 2009
-
+100.5
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
if (Files[i].NeedCompression)
{
CompressFile(Files[i], Files[i].FileNameWithPath);
}
else
{
CompressFile(Files[i], Files[i].FileNameWithPath);
}
Если файл нужно сжать, сжимаем, или сжимаем :D
ps:// 3 года назад писал подобие архиватора, за компрессию отвечала библиотека zlib.net
nolka4,
11 Декабря 2009
-
−161.4
- 1
SELECT result=1 WHERE 1=0
Тестируем что-то... Но что?
bolkhovsky,
10 Декабря 2009