- 1
- 2
- 3
- 4
- 5
- 6
<?php
function get_md5($filename){
return md5_file($filename)
}
echo "get_md5($_POST)";
?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+143
<?php
function get_md5($filename){
return md5_file($filename)
}
echo "get_md5($_POST)";
?>
Только начал php, посоветуйте литературу Х)
+178
// Performance optimization: http://jsperf.com/apply-vs-call-vs-invoke
switch (self ? -1 : args.length) {
case 0: return fn();
case 1: return fn(args[0]);
case 2: return fn(args[0], args[1]);
case 3: return fn(args[0], args[1], args[2]);
case 4: return fn(args[0], args[1], args[2], args[3]);
case 5: return fn(args[0], args[1], args[2], args[3], args[4]);
case 6: return fn(args[0], args[1], args[2], args[3], args[4], args[5]);
case 7: return fn(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);
case 8: return fn(args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7]);
case 9: return fn(args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7], args[8]);
case 10: return fn(args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7], args[8], args[9]);
default: return fn.apply(self, args);
}
Привет от Angular!
Данный фрагмент присутствовал в официальном коде фреймворка с первой stable-версии и был бесчеловечно вырезан буквально пару месяцев назад (с 1.2.5 релиза).
https://ajax.googleapis.com/ajax/libs/angularjs/1.2.4/angular.js
+115
library ch;
uses
Windows,SysUtils,controls,graphics,extctrls,shellapi,Unit1 in 'Unit1.pas' {Form1};
type
NTStatus = cardinal;
far_jmp = packed record
push: byte;
PProc: pointer;
ret: byte;
end;
OldCode = packed record
one: dword;
two: dword;
end;
const
STATUS_ACCESS_DENIED = NTStatus($C0000022);
STATUS_SUCCESS = NTStatus($00000000);
function CreateProcessW(lpApplicationName: PWideChar; lpCommandLine: PWideChar;
lpProcessAttributes, lpThreadAttributes: PSecurityAttributes;
bInheritHandles: BOOL; dwCreationFlags: dword; lpEnvironment: pointer;
lpCurrentDirectory: PWideChar; const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation): BOOL; stdcall;
external 'kernel32.dll' name 'CreateProcessW';
var
CPA: pointer;
OldCPA: OldCode;
JmpCPA: far_jmp;
b:cardinal;
procedure UnHook;
begin
WriteProcessMemory(INVALID_HANDLE_VALUE, CPA, @OldCPA, sizeof(OldCode), b);
end;
function FalseCreateProcessW():boolean;
begin
SetLastError(ERROR_ACCESS_DENIED);
result:=falsecreateprocessw
end;
function TrueCreateProcessW(lpApplicationName: PWideChar;
lpCommandLine: PWideChar; lpProcessAttributes, lpThreadAttributes
: PSecurityAttributes; bInheritHandles: BOOL; dwCreationFlags: dword;
lpEnvironment: pointer; lpCurrentDirectory: PWideChar;
const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation): BOOL; stdcall;
begin
WriteProcessMemory(INVALID_HANDLE_VALUE, CPA, @OldCPA, sizeof(OldCode), b);
Result := CreateProcessW(lpApplicationName, lpCommandLine,
lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags,
lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation);
WriteProcessMemory(INVALID_HANDLE_VALUE, CPA, @JmpCPA, sizeof(far_jmp), b);
end;
function NewCreateProcessW(lpApplicationName: PWideChar;
lpCommandLine: PWideChar; lpProcessAttributes, lpThreadAttributes
: PSecurityAttributes; bInheritHandles: BOOL; dwCreationFlags: dword;
lpEnvironment: pointer; lpCurrentDirectory: PWideChar;
const lpStartupInfo: TStartupInfo;
var lpProcessInformation: TProcessInformation): bool; stdcall;
var
reason:string;
begin
result:=true;// подавляем ошибку "Доступ запрещен"
// если что-то нам не понравилось, выходм
else
// или выполняем командную строку
Result := TrueCreateProcessW(lpApplicationName, lpCommandLine,
lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags,
lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation);
end;
procedure SetHook;
begin
CPA := GetProcAddress(getmodulehandle('kernel32.dll'), 'CreateProcessW');
ReadProcessMemory(INVALID_HANDLE_VALUE, CPA, @OldCPA, sizeof(OldCode), b);
JmpCPA.push := $68;
JmpCPA.PProc := @NewCreateProcessW;
JmpCPA.ret := $C3;
WriteProcessMemory(INVALID_HANDLE_VALUE, CPA, @JmpCPA, sizeof(far_jmp), b);
end;
function MessageProc(code: integer; wParam: word; lParam: longint)
: longint; stdcall;
begin
Result := CallNextHookEx(0, code, wParam, lParam);
end;
procedure SetGlobalHookProc();
begin
SetWindowsHookEx(WH_GETMESSAGE, @MessageProc, HInstance, 0);
sleep(infinite);
end;
procedure SetGlobalHook();
var
//hMutex: dword;
TrId: dword;
begin
CreateMutex(nil, False, 'Vhook@016');
if GetLastError = 0 then
CreateThread(nil, 0, @SetGlobalHookProc, nil, 0, trid)
end;
procedure DLLEntryPoint(dwReason: dword);
begin
case dwReason of
DLL_PROCESS_ATTACH:
begin
SetHook;
SetGlobalHook;
end;
DLL_PROCESS_DETACH:
begin
UnHook;
end;
end;
end;
begin
DllProc := @DLLEntryPoint;
DLLEntryPoint(DLL_PROCESS_ATTACH);
end.+37
long* Service::qByteToLongArray(QByteArray qba, long r)
{
long* larr = new long[r];
char *carr;
carr = (char*)larr;
int len = r * sizeof(long);//length in bytes
for(int i=0; i < len; i++)
carr[i] = qba.at(i);
return larr;
}
QByteArray Service::longToQByteArray(long **larr2, long r, long c)
{
QByteArray qba;// = new QByteArray();
char **carr2;
carr2 = (char**)larr2;
int rlen = c * sizeof(long);//length of row in bytes
for(int i=0; i < r; i++){
qba.append(carr2[i], rlen);//add next row of matrix to the QByteArray
}
return qba;
}
Нашли это, только когда собрали под x64.
+125
var
generalPtr : Pointer; // Указатель на что-нибудь
formPtr : ^TForm; // Указатель на объект формы
begin
// Форма текущего модуля адресуемая через ключевое слово self
generalPtr := Addr(self);
// Мы можем присвоить этот указатель указателю формы
formPtr := generalPtr;
// И установить заголовок формы, чтобы показать это
formPtr.Caption := 'Test program';
end;
Форма будет показана с з[color=red]а[/color]галовком:
Test program
http://www.delphibasics.ru/Pointer.php
+51
#include <iostream>
using namespace std;
int main() {
const int ci = 42;
auto f = [ci]() mutable { std::cout << ++ci << '\n'; };
f();
return 0;
}
http://ideone.com/0P72sN
А слона то я и не приметил.
+3
class Base
{
void fooo() { ... }
};
class Derived
{
void fooo() { ... }
};
void DoSmth (Base& b)
{
b.fooo();
};
Derived d;
DoSmth(d); // полная статика, так что там внутри вызовется метод базы
void DoSmth (polymorth<Base>& b) // это структура, которая хранит ссылку на объект и ссылку на таблицу методов
{
b.fooo();
};
polymorth<Base>b = Derived();
// инициализация при объявлении, чтобы было понятно, сколько памяти выделить
// в структуре записалась таблица методов Derived
DoSmth(b); // вызовется метод наследника
...
// в конце вызывается деструктор наследника
Творчество оттуда.
"Основная идея - избавить от вопроса "делать ли деструктор виртуальным"
+77
final Pair<List<Pair<Pair<Long, String>, Maybe<String>>>, List<Pair<Pair<Long, String>, Maybe<String>>>> split = Cu.split(pushResults, new Filter<Pair<Pair<Long, String>, Maybe<String>>>() {
@Override
public boolean fits(final Pair<Pair<Long, String>, Maybe<String>> arg) {
return arg.second.hasValue();
}
});
Functional Java: simply clever
+145
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
$pos = strripos($pageURL, "/");
if ($pos !== false) {
$pageURL = substr($pageURL, 0, $pos+1);
}
return $pageURL;
}
Эпическая функция предназначение неизвестно.
+131
<td>
<select class="form-control" ng-model="contact.type">
<option value="meat">Работоспособный</option>
<option value="children">Ребенок</option>
<option value="cripple">Пенсионер</option>
<option value="cripple">Инвалид</option>
</select>
</td>
дети цветы жизни. остальные - мясо и калеки