- 1
- 2
Ебите в рот тех, кто лжёт Вам, что грипп — воздушно-капельная инфекция.
Грипп передаёться через слизь, размазанную по пальцам.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−4
Ебите в рот тех, кто лжёт Вам, что грипп — воздушно-капельная инфекция.
Грипп передаёться через слизь, размазанную по пальцам.
0
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
http:tidhttp;
ss:tstringstream;
begin
try
http:=tidhttp.Create(nil);
http.CookieManager:=tIdcookiemanager.Create(nil);
http.HandleRedirects:=true;
http.AllowCookies:=True;
http.Request.UserAgent:='Mozilla/5.0 (Windows NT 6.1; rv:56.0) Gecko/20100101 Firefox/56.0';
http.IOHandler:=tidssliohandlersocketopenssl.Create(nil);
http.Compressor:=tidcompressorzlib.Create(nil);
http.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
http.Request.AcceptEncoding:='gzip, deflate';
SS:=tstringstream.Create;
HTTP.Get(ARequestInfo.URI, SS);
aresponseinfo.CharSet:=http.Response.CharSet;
aresponseinfo.ContentType:=http.Response.ContentType+'; '+'charset='+http.Response.CharSet+';';
aresponseinfo.ContentStream:=SS;
AResponseInfo.WriteContent;
except
end;
end;
Мой разложившийся мозг сопротивляется. Сковзь пелену галлюцинаций, где где меня имеют сразу несколько волосатых таджиков, отчетливо пробивается реклама. Ее много. Очень много. Реклама и навязчивые видео с предложениями "срубить бабла" даже страшнее галлюцинаций. Я написал простой фильтр, заключающийся в локальном сервере, к которому я подключаюсь из браузера. Сервер является точкой доступа. Неугодные запросы я буду отпиздовывать на корню.
Собственно, этот код я запостил как фикс досадного гълюка, заключающегося в том, что браузер посылает нахой поле charset. Это херит даже код html.
Кодировку следует указывать в поле "КонтентТипе"
пожалуй, всё. пока.
0
private static void createHook(MethodNode mn,
String targetClassName,
String hookMethodClass,
String hookMethodName,
Boolean printMessages)
{
InsnList il = new InsnList();
LabelNode originalLabelNode = new LabelNode();
// Object caller, param1, param2, ...
String hookMethodDesc = "(Ljava/lang/Object;" + mn.desc.substring(1);
il.add(new VarInsnNode(Opcodes.ALOAD, 0)); // this
il.add(new MethodInsnNode(Opcodes.INVOKESTATIC,
isOriginalCallClassName,
isOriginalCallMethodName,
isOriginalCallMethodDesc,
false));
il.add(new JumpInsnNode(Opcodes.IFNE, originalLabelNode));
if (printMessages) {
il.add(BytecodeHelper.getPrintlnSequence("patched " + mn.name + mn.desc + " called"));
}
il.add(new VarInsnNode(Opcodes.ALOAD, 0)); // this
il.add(getParamsLoadSequence(mn.desc, 1)); // other params
il.add(new MethodInsnNode(Opcodes.INVOKESTATIC, hookMethodClass, hookMethodName, hookMethodDesc, false));
il.add(new InsnNode(parseReturnOpcode(hookMethodDesc)));
il.add(originalLabelNode);
if (printMessages) {
il.add(BytecodeHelper.getPrintlnSequence("original " + mn.name + mn.desc + " called"));
}
mn.instructions.insert(il);
}
Бытует мнение, что «Java» — это высокозащищённый язык, в котором невозможны всяческие си-подобные грязные хаки. На самом деле, конечно, это не так: просто чтобы прострелить себе ногу в «Жабе» — надо чуть больше постараться.
Фрагмент небольшой самописной либы, позволяющей хукать произвольные методы, прямо как в «Microsoft Detours».
0
$ objdump -f libyjpagent64.so
libyjpagent64.so: file format elf64-x86-64
architecture: i386:x86-64, flags 0x00000150:
HAS_SYMS, DYNAMIC, D_PAGED
start address 0x00000000000c2690
$ readelf -h libyjpagent64.so
ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: DYN (Shared object file)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Entry point address: 0xc2690
Start of program headers: 64 (bytes into file)
Start of section headers: 5131216 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 7
Size of section headers: 64 (bytes)
Number of section headers: 30
Section header string table index: 29
куик, зачем на прыщах две дублирующие друг друга утилиты?
0
https://beautifulracket.com/appendix/thoughts-on-rhombus.html
http://greghendershott.com/2019/07/future-of-racket.html
https://github.com/racket/rhombus-brainstorming/blob/master/resources/goals.md
Авторы Racket планируют в течение нескольких лет выпустить новый диалект языка, в котором, среди прочего, снизить порог вхождения, в том числе, вероятно, избавившись от скобочек™.
В связи с этим возникает два вопроса:
1) правда ли они думают, что сложность освоения Racket и lisp-подобных языков в скобочках (а не например в мощной системе макросов, метапрограммирования и возможности написания языков в языке)
2) переизобретут ли они Dylan спустя три десятка лет
−2
я проснулся во время кошмара - мне приснилась какая то красная хуйня в розовых носочках, которая кричала "пхп мое наслаждение, я хочу ещё"
я уже должен был проснуться ведь петухи во сне - не к добру, но я смотрел дальше и это оказался всего навсего обосанный бомж у метро, кушающий банан
просто у него нет денег и носит розовые носочки с красными понталонами, чтобы согреться. Ну что я рассказываю - обычный пхп кодир...
ну вообщем я смотрю на бомжа этого, вроде бы чего просыпаться то, поржать можно же, но потом в небе появляются летающие буквы 'p' и 'h' и
тогда я почувствовал что скоро начнется пиздец мирового масштаба, ведь даже индусы стали танцевать танец в честь пхп и одна девка
с индийским голосом из фильмов пропела "ооо май пхп ааааай яяяяяя" и тогда слева меня появилась проститутка которая готова была отдаться мне
за то, что я научу её пхп, я конечно же отказал, ведь параши коснешься - петухом станешь, ну вот, а чего просыпаться то все же?
а там потом буквы 'p' и 'h' начали появляться везде и я видел как слово 'php' подходит ко мне, а сзади него АРМИЯ ПХП !!! тогда
я побежал далекоооо и залез на башню, где было так тихо, я сел на пол и смотрел в окно, которого нет, а потом появился скример и с надписью
'php найдет тебя, ты станешь петухом'. Я закричал и проснулся. Блять, больше никаких сайтов с '.php'...
+1
public static Date getMinDate(List<Date> dates) {
Preconditions.checkArgument(dates != null && !dates.isEmpty(), "Dates list must be not null and not empty");
dates.sort(Comparator.naturalOrder());
return dates.get(0);
}
ну а че
+1
// 3.7 Position-independent Limitation
// At runtime an MRE program needs to be dynamically loaded into RAM. In other words, the addresses of the variables and functions can be dynamically assigned when they are loaded. This requires that the code be position-independent. If the code needs to determine the addresses at compile time, then it will fail to compile.
// The following code exemplifies this error.
/* 1 */
int a[10], b[10];
struct c {
int* d;
int* e;
};
struct c f = {a, b};
/* 2 */
void func1(void) {}
typedef struct struct1 {
int a;
void (*fun)(void);
} struct1;
struct1 array1[1] = {0, func1};
/* 3 */
char *str = "test";
char * list[] = {"zero", "one", "two"};
// The solution is as follows:
/* 1 */
int a[10], b[10];
struct c {
int* d;
int* e;
};
struct c f;
void init1(void) {
f.d = a;
f.e = b;
}
/* 2 */
void func1(void) {}
typedef struct struct1 {
int a;
void (*fun)(void);
} struct1;
struct1 array1[1];
void init2(void) {
array1[0].a = 0;
array1[0].fun = func1;
}
/* 3 */
char str[] = "test";
char list[][10] = {"zero", "one", "two"};
MRE Developer FAQ
This document contains information that is proprietary to MediaTek Inc.
Загрузчик программ из MRE не умеет сложные фиксапы, поэтому изменяйте свой код, чтобы в нём не было адресов, которые нужно определять в момент загрузки.
+2
#include "stdio.h"
#include "conio.h"
#define infinity 999
namespace belugina
{
void dij(int n,int v,int cost[10][10],int dist[])
{
int i,u,count,w,flag[10],min;
for(i=1;i<=n;i++)
flag[i]=0,dist[i]=cost[v][i];
count=2;
while(count<=n)
{
min=99;
for(w=1;w<=n;w++)
if(dist[w]<min && !flag[w])
min=dist[w],u=w;
flag[u]=1;
count++;
for(w=1;w<=n;w++)
if((dist[u]+cost[u][w]<dist[w]) && !flag[w])
dist[w]=dist[u]+cost[u][w];
}
}
}
Я разгадала знак бесконечности.
#define infinity 999
+2
bool End_Range (FILE * f){
int tmp;
tmp = fgetc(f);
tmp = fgetc(f);
if (tmp != '\'') fseek(f,-2,1);
else fseek(f,1,1);
return tmp == '\'' ? true : false;
}
void Natural_Merging_Sort (char *name){
int s1, s2, a1, a2, mark; FILE *f, *f1, *f2; s1 = s2 = 1;
while ( s1 > 0 && s2 > 0 ){
mark = 1; s1 = 0; s2 = 0;
f = fopen(name,"r"); f1 = fopen("nmsort_1","w");
f2 = fopen("nmsort_2","w"); fscanf(f,"%d",&a1);
if ( !feof(f) ) fprintf(f1,"%d ",a1);
if ( !feof(f) ) fscanf(f,"%d",&a2);
while ( !feof(f) ){
if ( a2 < a1 ) {switch (mark) {
case 1:{fprintf(f1,"' "); mark = 2; s1++; break;}
case 2:{fprintf(f2,"' "); mark = 1; s2++; break;}
}}
if ( mark == 1 ) { fprintf(f1,"%d ",a2); s1++; }
else { fprintf(f2,"%d ",a2); s2++;}
a1 = a2; fscanf(f,"%d",&a2);
}
if ( s2 > 0 && mark == 2 ) { fprintf(f2,"'");}
if ( s1 > 0 && mark == 1 ) { fprintf(f1,"'");}
fclose(f2); fclose(f1); fclose(f);
cout << endl;
Print_File(name);
Print_File("nmsort_1");
Print_File("nmsort_2");
cout << endl;
f = fopen(name,"w"); f1 = fopen("nmsort_1","r");
f2 = fopen("nmsort_2","r");
if ( !feof(f1) ) fscanf(f1,"%d",&a1);
if ( !feof(f2) ) fscanf(f2,"%d",&a2);
bool file1, file2;
while ( !feof(f1) && !feof(f2) ){ file1 = file2 = false;
while ( !file1 && !file2 ) {
if ( a1 <= a2 ) { fprintf(f,"%d ",a1);
file1 = End_Range(f1); fscanf(f1,"%d",&a1); }
else { fprintf(f,"%d ",a2); file2 = End_Range(f2);
fscanf(f2,"%d",&a2); }
}
while ( !file1 ) { fprintf(f,"%d ",a1);
file1 = End_Range(f1); fscanf(f1,"%d",&a1); }
while ( !file2 ) { fprintf(f,"%d ",a2);
file2 = End_Range(f2); fscanf(f2,"%d",&a2); }
} file1 = file2 = false;
while ( !file1 && !feof(f1) ) { fprintf(f,"%d ",a1);
file1 = End_Range(f1); fscanf(f1,"%d",&a1); }
while ( !file2 && !feof(f2) ) { fprintf(f,"%d ",a2);
file2 = End_Range(f2); fscanf(f2,"%d",&a2); }
fclose(f2); fclose(f1); fclose(f);
} remove("nmsort_1"); remove("nmsort_2");
}
Потеряли пульт от телевизора? Найди его бинарным поиском!!!