- 1
- 2
- 3
[Mon Nov 22 15:52:46 2010] [emerg] [client 217.69.133.30] mod_bartertown_translate: Fatal: STL: cannot find file in include directories `/`
жгут
написали бы еще "не могу открыть что-то что должно лежать в '/'"
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+145
[Mon Nov 22 15:52:46 2010] [emerg] [client 217.69.133.30] mod_bartertown_translate: Fatal: STL: cannot find file in include directories `/`
жгут
написали бы еще "не могу открыть что-то что должно лежать в '/'"
программа не смогла открыть файл и написала в логи..
+162
GetFirstFieldWithName(CString szElemName)
{
int i = -1;
for (i = 0; i < m_FieldValues.GetSize(); i ++)
{
if (m_FieldValues[i]->m_szElemName == szElemName)
break;
}
if ((i > 0) && (i < m_FieldValues.GetSize()))
return m_FieldValues[i];
else
return NULL;
}
+166
JNIEXPORT jstring JNICALL _Java_com_fl_nat_Status_listProcessess0(JNIEnv *env, jobject obj) {
char format[1024*128];
char name[128];
unsigned long procs[1024], needed, ret;
if(!EnumProcesses(procs, sizeof(procs), &needed)) return (*env)->NewStringUTF(env, "");
ret = needed / sizeof(unsigned long);
unsigned int i = 0;
for(; i < ret; i++) {
if(procs[i] == 0) continue;
HANDLE hproc = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, 0, procs[i]);
GetModuleBaseName(hproc, 0, name, 128);
strncat(format, name, strlen(name));
strncat(format, ",", 1);
sprintf(name, "%i", procs[i]);
strncat(format, name, strlen(name));
strncat(format, ";", 1);
CloseHandle(hproc);
}
return (*env)->NewStringUTF(env, format);
}
к говнокоду №4685
итак, эта программа (JNI на C++ и "клиентская" часть на Java) создают список процессов таким извращенным образом:
C++ создает строку вида "имяпроцесса1,идпроцесса1;имяпроцесса2,и дпроцесса2;", после чего жабо-код парсит эту строку, переводя её в массив обьектов SystemProcess
+145
if (mode == MASTER)
Dev_Mode = MASTER;
else
Dev_Mode = SLAVE;
+145
for(i=0;i<=15;i++) {
o=Odd(N[i]);s=Simple(N[i]);//Odd-проверка на нечётность всех цифр, Simple-на простое число
if((o&&s)||(N[i]==3||N[i]==5||N[i]==7))
{
}
else cprintf("%d ",N[i]); //и вот тут замкнуло...но по другому никак)
if(i>n+4) goto exit;//потерялись 4 элемента...
}
лаба..сдам на следующей неделе, в надежде что у препода произойдёт переполнение и поставит, всё-таки всё работает =)
+183
bool or(bool x1, bool x2) {
if (x1 || x2)
return true;
else
return false;
}
Я РЕАЛЬНО видел такой код, написанный на полном серьёзе.
+163
long Date :: ConvertToDays()
{
int M=0,Y=0;
for(int i=2;i<=m_Year;i++)
{
if((i%4 == 0) && (i%100 !=0) || (i%400==0))Y+=366;
else Y+=365;
}
for(i=2;i<=m_Month;i++){
if (i == 1)M=0;else
if ((((m_Year%4 == 0) && (m_Year%100 !=0) || (m_Year%400==0)) && (i == 3)))M+=29;else
if ((((m_Year%4 != 0) || ((m_Year%100 ==0) && (m_Year%400 !=0))) && (i == 3)))M+=28;else
if ((i == 2) || (i == 4) || (i == 6) || (i == 8) || (i == 9) || (i == 11))M+=31;else
if ((i == 5) || (i == 7) || (i == 10) || (i == 12))M+=30;
}
return m_Day+M+Y;
}
Взято с forum.xakep.ru
+159
int makedata(int id,int part,void *d,int datalen,void *buf)
{
//packet struct :
// code = short int, lenght = shotr int, id = int, numofpart = int, data = 1024
int packlen = sizeof(short int)*2 + sizeof(int)*2 + datalen;
char *tbuf = new char [packlen];
char* tbufptr = tbuf;
*((short int *)tbufptr) = data; //first field
(short int *)tbufptr++;
*((short int *)tbufptr) = packlen; //second field
(short int *)tbufptr++;
*((int *)tbufptr) = id;
(int *)tbufptr++;
*((int *)tbufptr) = part;
(int *)tbufptr++;
*((short int *)tbufptr) = datalen;
(short int *)tbufptr++;
memcpy((void*)tbufptr,d,datalen);
buf=tbuf;
return packlen;
}
fileinfo* getask(void *b)
{
fileinfo *fi = new fileinfo();
char *bufptr = (char*)b;
(short int*)bufptr++;
short int plen = *((short int*)bufptr);
(short int*)bufptr++;
fi->numofpart = *((int*)bufptr);
(int*)bufptr++;
fi->filelenght = *((int*)bufptr);
(int*)bufptr++;
int filelen = plen-(bufptr-(char*)b);
fi->filename = new char[filelen];
strncpy(fi->filename,bufptr,filelen);
return fi;
}
Вместо того, что бы воспользоваться структурой, забиваем всё ручками.
+160
int m[3][3]={
{1, 6, 7},
{2, 5, 8},
{3, 4, 9}};
int tmp[3]={m[0][0],m[0][1],m[0][2]}; m[0][0]=m[1][0];m[0][1]=m[1][1];m[0][2]=m[1][2]; m[1][0]=tmp[0];m[1][1]=tmp[1];m[1][2]=tmp[2];
Программа меняет местами 2 строки
+160
for( int b = 0; b < cntblocket; ++b )
{
delete msrLst[b]->record;
delete msrLst[b]->record;
}
Сразу вспоминается: "- А зачем у вас тут два одинаковых jump'а стоять? - А вдруг один не сработает?"
Видимо, совсем не выспался программист ;)