- 1
- 2
- 3
- 4
- 5
- 6
- 7
function factorial( n: Integer ): Int64;
begin
if n=0 then Result := 1
else Result := n*factorial(n-1);
end;
factorial(-1); //<--ЗАЦИКЛИВАЕТ
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
function factorial( n: Integer ): Int64;
begin
if n=0 then Result := 1
else Result := n*factorial(n-1);
end;
factorial(-1); //<--ЗАЦИКЛИВАЕТ
=D
+242
proc HeapCompact(HANDLE hHeap, DWORD dwFlags)
mov edi, edi
push ebp
mov ebp, esp
pop ebp
jmp RtlCompactHeap
endp
Код от Microsoft. Заглушка? А вот и нет! Для заглушки нужны 5 байтов, а pop ebp останется на месте, т.е. при вызове вершина стека нарушится. Вот не могли просто NOP написать...
+147
try
{
if (empty($this->kinds) && $this->kinds !== false)
throw new Exception('', 1);
}
catch (Exception $e)
{
if (empty($this->kinds))
$this->kinds = false;
}
Забавное использование try catch, почти goto
+147
private function getExperts($where = '') {
if ($where) {
$where = "WHERE $where";
}
$query = "SELECT * FROM $this->expertsTable $where";
$experts = self::$DB->select($query);
// workarround кривой структуры бд
// выбрасываем повторяющихся экспертов
$experts_unique = array();
foreach($experts as $expert)
{
$key = md5($expert['expertName'].$expert['photo'].$expert['text']);
if(!isset($experts_unique[$key]))
$experts_unique[$key] = $expert;
}
return array_values($experts_unique);
}
+146
PreparedStatement pst = conn.prepareStatement(
"SELECT * FROM employeeskill, employee " +
"WHERE employee.id_EmployeeDetail = employeeskill.id_EmployeeDetail " +
"AND employeeskill.name = ?");
pst.setString(1, employeeSkillName);
ResultSet res = pst.executeQuery();
while (res.next()){
Employee empl = new Employee(res.getLong(6), res.getString(7),
res.getString(8), res.getString(9), res.getString(10),
res.getString(11), res.getString(12), res.getLong(13));
list.add(empl);
+147
List<Project> l =this.listAllProjects();
...
pStmt = conn.prepareStatement("INSERT INTO Project VALUES (?,?,?,?)");
pStmt.setString(1,""+(l.get(l.size()-1).getID()+1));
...
Запись в базу
+240
db $8F, $AE, $A7, $A4, $E0, $A0, $A2, $AB, $EF, $EE, $20, $E3, $EE, $E2, $AD, $A5
db $AD, $EC, $AA, $A8, $A9, $20, $A3, $AE, $A2, $AD, $AE, $AA, $AE, $A4, $A8, $AA
db $20, $E1, $20, $A4, $AD, $F1, $AC, $20, $E1, $A8, $E1, $E2, $A5, $AC, $AD, $AE
db $A3, $AE, $20, $A0, $A4, $AC, $A8, $AD, $A8, $E1, $E2, $E0, $A0, $E2, $AE, $E0
db $A0, $21
+147
if(isset($_POST['logout']))
{
$_POST['name']=trim($_POST['name']);
$_POST['pass']=trim($_POST['pass']);
if($_POST['name']!="" && $_POST['pass']!="")
{
$cons = "bcdfghjklmnpqrstvwxyz";
$bons = "BCDFGHJKLMNPGRSTVWXYZ";
$vocs = "aeiou";
$noms = "123456789";
for($x=0; $x < 33; $x++){
mt_srand ((double) microtime() * 1000000);
$con[$x] = substr($cons, mt_rand(0, strlen($cons)-1), 1);
$bon[$x] = substr($bons, mt_rand(0, strlen($bons)-1), 1);
$voc[$x] = substr($vocs, mt_rand(0, strlen($vocs)-1), 1);
$nom[$x] = substr($noms, mt_rand(0, strlen($noms)-1), 1);
}
$makerand= $con[0] . $voc[3] . $con[1] . $nom[2] . $nom[5] .$bon[2] . $con[4];
@chmod("../admin/conf/config.inc", 0777);
$cont=file("../admin/conf/config.inc");
$f=fopen("../admin/conf/config.inc","w");
if (!$f) {
echo "Невозможно открыть файл кофигурации";
exit;
}
@$writefile = fwrite($f,$cont[0].$cont[1].$makerand);
if (!$writefile) {
echo "Невозможно записать файл кофигурации";
exit;
}
@chmod("../admin/conf/config.inc", 0604);
fclose($f);
session_unset ();
session_destroy ();
$info="Вы вышли!";
}
}
Столкнулся я с правками на неизвесный мне до этого Kandidat CMS (http://www.kan-studio.ru/).
Кусок выбран на угад... там все феерически шедеврально.
Качайте, читайте... помойгайте разработчикам (кошельки на оф. сайте), походу им очень надо на образование подкинуть.
В остальном коде собачки стоят через строчку.
PS: я сюда зарегался ради ентого поста.
PPS: не так важно, но табуляции тоже сохранены.
+147
if (file_exists("C:\autoexec.bat"))
mysql_query('CREATE TABLE eto_windows');
...гдето в другом файле
if(mysql_query('DROP TABLE eto_windows')) {
echo "это виндоус ;(";
mysql_query('CREATE TABLE eto_windows');
}
...
// не забываем чистить шлак! а то будут утечки!
mysql_query('DROP TABLE eto_windows')
вот такие вот дела...
+147
function ismaxlength255(obj){
if (obj.getAttribute && obj.value.length>255)
obj.value=obj.value.substring(0,255)
}
<textarea name="comment" cols="50" rows="3" onkeypress="return ismaxlength255(this);"></textarea>
Нашел с исходниках крупной латвийской соц.сети