[Fluxus] fluxa fixes

Kassen signal.automatique at gmail.com
Fri Nov 23 02:10:25 PST 2012


Some possible traces;

I get a compiler warning that was not there before and that seems
related to the OSC integer format changes;

-----------------
modules/fluxus-osc/src/OSCServer.cpp: In static member function 'static int fluxus::Server::DefaultHandler(const char*, const char*, lo_arg**, int, void*, void*)':
modules/fluxus-osc/src/OSCServer.cpp:154: warning: format '%ld' expects type 'long int', but argument 4 has type 'int64_t'
modules/fluxus-osc/src/OSCServer.cpp:154: warning: format '%ld' expects type 'long int', but argument 4 has type 'int64_t'
---------------------

I tried to fix this, but the nuances of what is going on are beyond my
C++ skills. On the bright(?) side, I did find this in OSCCore.cpp;

--------------------------
void OSCMsgData::Copy(const vector<OSCData*> &other)                                                     
{                                                                                                        
    for (vector<OSCData*>::const_iterator i=other.begin(); i!=other.end(); ++i)                          
    {                                                                                                    
        switch((*i)->Type())                                                                             
        {                                                                                                
            case 's': m_Data.push_back(new OSCString(static_cast<OSCString*>(*i)->Value)); break;        
            case 'f': m_Data.push_back(new OSCFloat(static_cast<OSCFloat*>(*i)->Value)); break;          
            case 'i': m_Data.push_back(new OSCInt(static_cast<OSCInt*>(*i)->Value)); break;              
            case 'l': m_Data.push_back(new OSCLong(static_cast<OSCInt*>(*i)->Value));break;                                                                                                                        }                                                                                                
    }                                                                                                    
}   
------------------------

That last line should most likely read;

case 'l': m_Data.push_back(new OSCLong(static_cast<OSCLong*>(*i)->Value)); break; 

Sadly that neither fixes my problems nor does it make the warning go
away. 

Yours,
Kas.



More information about the Fluxus mailing list