- 
        
        
                +104        
        
                            - 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 - 11
 - 12
 - 13
 - 14
 
                        #ifdef _DEBUG
            if ( !
#endif
                dt_time_sprintf_current( tbuf, sizeof(tbuf), false )
#ifdef _RELEASE
                ;
#else
                )
            {
                fprintf( stderr, "-- unable to get current time\n" );
            }
#endif
        }
#ifdef _DEBUG
                                     
        
            ;(
        
        
            
 ilardm,
            09 Февраля 2012
        
        
        
         
        - 
        
        
                +132        
        
                            - 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
 
                        #define COMMAND_MARKER		'\x1B'
#define COMMAND_SET			'='
#define COMMAND_XOR			'^'
#define COMMAND_OR			'|'
#define COMMAND_AND			'&'
void usbWriteOut(uchar *data, int len)
{
	while(len--) {
		uchar c = *data;
		buf[0] = buf[1];
		buf[1] = buf[2];
		buf[2] = buf[3];
		buf[3] = c;
		
		if(buf[0] == COMMAND_MARKER) {
			uint8_t val = (hex2u(buf[2]) << 4) | hex2u(buf[3]);
			if(buf[1] == COMMAND_SET) {
				colorData = val;
			}
			else if(buf[1] == COMMAND_XOR) {
				colorData ^= val;
			}
			else if(buf[1] == COMMAND_OR) {
				colorData |= val;
			}
			else if(buf[1] == COMMAND_AND) {
				colorData &= ~val;
			}
		}
	}
}
                                     
        
            Простой баг оказался крайне подлым!
При тестировании девайса терминалкой и чепятании команды ручками, каждый символ уходил в отдельном пакете и создавалось впечатление, что всё работает.
После чего девайс был собран с применением большого количества термоклея, так что исправление бага оказалось совершенно непростым занятием >_<
        
        
            
 odmin,
            09 Февраля 2012
        
        
        
         
        - 
        
        
                +158        
        
                            - 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
 
                        // Запрос выбрал из таблицы всё, далее цикл
for($c=$from; $c<$n_objects+$from; $c++)  {
// Название ключа улыбнуло - $products[$i]['IsNotAvalible']
// формирует массив (оставлю самое интересное):
// запрос в итерации для картинки текущего товара
$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Index'");
		if($this->connect->GetNRows()>0)
		{
// запрос в итерации для урлы картинки текущего товара
			$i_src = $this->img->ImgLink($foto_res[0]['FotoID']);
			$MATR['PRODUCTS'][$mi]['INDEX_FOTO_IMG']='<img src="'.$i_src.'" alt="'.$products[$i]['Name'].'" border="0" />';
			$MATR['PRODUCTS'][$mi]['INDEX_FOTO_SRC']=$i_src;
		}
			
// бьем наверняка, а вдруг еще картинки есть?			
		$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Small'");
		if($this->connect->GetNRows()>0)
		{
// ага, точно, картинка есть, надо достать урлу
			$i_src = $this->img->ImgLink($foto_res[0]['FotoID']);
			$MATR['PRODUCTS'][$mi]['SMALL_FOTO_IMG']='<img src="'.$i_src.'" alt="'.$products[$i]['Name'].'" border="0" />';
			$MATR['PRODUCTS'][$mi]['SMALL_FOTO_SRC']=$i_src;
		}
		else $img_html ='';
// ну давай еще разок, нам запросом меньше, запросом больше не принципиально уже
		$foto_res = $this->connect->Query("SELECT FotoID FROM __cat_Foto WHERE ProductID='".$products[$i]['ID']."' AND Attribute='Large'");
		if($this->connect->GetNRows()>0)
		{
// ну ты смотри, еще картинку нашло, давай ка урлу к ней достанем
			$MATR['PRODUCTS'][$mi]['LARGE_FOTO_IMG']='<img src="'.$this->img->ImgLink($foto_res[0]['FotoID']).'" alt="'.$products[$i]['Name'].'" border="0" />';
		} 
		else $img_html ='';
}
                                     
        
            И вот такая она ВСЯ, то что я привел, это только формирование блочка популярных товаров.
Если вам понравится - буду веселить дальше, там еще мноого всего )))
        
        
            
 deep,
            09 Февраля 2012
        
        
        
         
        - 
        
        
                +1014        
        
                            - 1
 - 2
 - 3
 - 4
 - 5
 
                        #ifndef _WIN32
    std::ostream  * dpOutputStream;
#else
        ostream  * dpOutputStream;
#endif
                                     
        
            делаем код портабельным.
        
        
            
 Dummy00001,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +1003        
        
                            - 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 
                        class fileOutStream : public ostream
{
public:
    /* ... */
    virtual inline int printf( const char * fpFormat, ... )
    {
        /* ... */
    }
    /* ... */
}
                                     
        
            virtual inline метод.
        
        
            
 Dummy00001,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +1004        
        
                            - 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 - 11
 - 12
 - 13
 - 14
 
                        class FuncFileOutStream: public fileOutStream
{
public:
	/* ... */
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, bool b);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, char c);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, long l);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, int i);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, short s);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, const char* pc);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, float f);
	friend FuncFileOutStream& operator<<(FuncFileOutStream& out, double d);
	/* ... */
};
                                     
        
            попытка перенаправления данных проходящих через ostream.
только маленькая тонкость. fileOutStream уже перенакрывает ostream специально для этой цели - что бы собственный streambuf подставить, который данными проходящими через ostream и манипулирует используя два официальных виртуальных метода - вместо дюжины корявых операторов которые наверное и половины того что проект испульзует не покрывают. ну бляха муха поэтому же и сделали streambuf в стандарте, что бы вот таким маразмом не страдали...
        
        
            
 Dummy00001,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +159        
        
                            - 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
 
                        var wma0;
wma0 = {
0: "02:35 08/01/2012",
1: "дайте скрипт подарки",
id: 3,
uid: 103,
login: "gadget"
}
mess[0] = wma0;
var wma0;
wma0 = {
pol: 0,
last: 1325975830
}
u[0] = wma0;
var wma1;
wma1 = {
0: "10:19 20/12/2011",
1: "уххйййффыввы",
id: 2,
uid: 90,
login: "kotofeyka"
}
mess[1] = wma1;
var wma1;
wma1 = {
pol: 0,
last: 1324361954
}
u[1] = wma1;
                                     
        
            json? Не, не слышал
        
        
            
 jQuery,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +38        
        
                            - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 
                        $t='array(';
	foreach ($info as $k=>$v){
		$t.='"'.$k.'"=>"'.mysql_escape_string(htmlspecialchars($v)).'"';
		if ($i<($cnt-1)) $t.=',';
		$i++;
	}
	$t.=')';
	if ($labelingid) sql ("UPDATE labeling SET info='$t' WHERE id='$labelingid'");
                                     
        
            Хрясь!
        
        
            
 brainstorm,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +1007        
        
                            - 1
 - 2
 - 3
 - 4
 - 5
 
                        #if defined( HPUX_11_31 )
#define BDYNAMIC_CAST( CLASS, OBJECT )  (( CLASS ) ( OBJECT ))
#else
#define BDYNAMIC_CAST( CLASS, OBJECT )  (dynamic_cast< CLASS >(( OBJECT )))
#endif
                                     
        
            чуть кофе не похлебнулся.
при более детальном рассмотрении кода из-за которого это сделали, выяснилось что: (А) в проекте нет ни одного места где нужен динамик каст и (Б) половина наших С++ профисианалов не умеют пользоватся конст кастом (который по коду там и был им нужен, вместе со статик кастом).
        
        
            
 Dummy00001,
            08 Февраля 2012
        
        
        
         
        - 
        
        
                +971        
        
                            - 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 - 11
 - 12
 - 13
 - 14
 - 15
 - 16
 - 17
 
                        using System;
public class Man
{
    static int num;
    public Man parent = new Man();    //У каждого человека есть родители, ведь так?
    static Man()
    {
        num = 0;
    }
    public Man()
    {
        num++;
    }
}
                                     
        
            Компилятор C# против перенаселения, вовремя выдаёт StackOverflowException, пока расплодиться не успели..
        
        
            
 vistefan,
            08 Февраля 2012