{
public:
CmdPlaytreeAppend( intf_thread_t *pIntf, playlist_add_t *p_add ):
- CmdGeneric( pIntf ), m_pAdd( p_add ) { }
- virtual ~CmdPlaytreeAppend() { }
+ CmdGeneric( pIntf ), m_pAdd( NULL )
+ {
+ if( p_add )
+ {
+ m_pAdd = new playlist_add_t;
+ *m_pAdd = *p_add;
+ }
+ }
+ virtual ~CmdPlaytreeAppend()
+ {
+ delete m_pAdd;
+ }
virtual void execute();
virtual string getType() const { return "playtree append"; }
{
VlcProc *pThis = (VlcProc*)pParam;
- playlist_add_t *p_add = (playlist_add_t*)malloc( sizeof(
- playlist_add_t ) ) ;
-
- memcpy( p_add, newVal.p_address, sizeof( playlist_add_t ) ) ;
+ playlist_add_t *p_add = static_cast<playlist_add_t*>(newVal.p_address);
CmdGenericPtr ptrTree;
CmdPlaytreeAppend *pCmdTree = new CmdPlaytreeAppend( pThis->getIntf(),