Hello together,

this weekend I had the time to download and check the 
muse-2.0.1.tar.gz for compile time warnings.

It compiled without any major problems.

I marked them with my nickname WillyFoobar and the todays date 2012-09-30

Indeed I found some minor bugs.
 + There were some uninitialized usage of variables.
 + in /synti/vam/vam.cpp:43 there is a strange usage of pointer de-referencing
 + In three locations, in the header, 
    there are missing "virtual" destructors.


Virtual Destructor:
     The marked destructors need to be virtual, 
     as the class is abstract  or the class 
     has a parent class with virtual functions.

     If you think of inherited virtual classes as an onion with the sublayers
     The trick with virtual Destuctors is 
     that calling of the destructor of a (inner) parent class 
     will call all destructor of the outermost "layers" of the (onion-like) 
class.


If you need more (e.g. the result in form of a patch), 
please instruct me about how/against which release to make the patch.

Yours,
     Willy

hafi@wallee:~/Dokumente/prj/BUILD/src/muse2/muse-2.0.1> grep -Rni WillyFoobar . 
|grep 2012
./synti/vam/vam.cpp:43:// TODO: WillyFoobar 2012-09-30 // in next line: 
DENORMALIZE leads to this WARNING://  warning: dereferencing type-punned 
pointer will break strict-aliasing rules
./muse/mplugins/mitplugin.cpp:48:      QAction* act=0 ;  // DONE by WillyFoobar 
in 2012-09-30 // set to zero
./muse/mplugins/mitplugin.cpp:104:      if(act) // DONE by WillyFoobar in 
2012-09-30  // assure act is not NULL
./muse/midiedit/scoreedit.cpp:3167:                             int 
color_index;// TODO: 2012-09-30 by WillyFoobar: 'color_index' uninitialized in 
this function; 
./muse/midiedit/scoreedit.cpp:3181:                                     // 
TODO: 2012-09-30 by WillyFoobar // default: ASSERT(FALSE); 
color_index=BLACK_PIXMAP; break;
./muse/midiedit/scoreedit.cpp:3217:                                     
QPixmap* acc_pix; // TODO: 2012-09-30 by WillyFoobar: 'acc_pix' uninitialized 
in this function; 
./muse/midiedit/scoreedit.cpp:3223:                                             
// TODO: 2012-09-30 by WillyFoobar // default: ASSERT(FALSE); 
acc_pix=pix_noacc; break;
./muse/midiedit/ecanvas.cpp:156:            int partSn;  // TODO: this needs to 
be initialized, 2012-09-30  WillyFoobar 
./muse/midi.cpp:925:              else  // DONE: new else branch: 2012-09-30 by 
WillyFoobar
./muse/midi.cpp:926:              {  // DONE: begin of new else branch: 
2012-09-30 by WillyFoobar
./muse/midi.cpp:927:                // ASSERT(FALSE) // DONE: 2012-09-30 by 
WillyFoobar
./muse/midi.cpp:928:              {  // DONE: End of new else branch: 
2012-09-30 by WillyFoobar
./muse/audioconvert.h:58:      virtual ~AudioConverter(); // DONE: by 
WillyFoobar in 2012-09-30 // added virtual to dtor
./muse/plugin.h:233:      virtual ~PluginIBase();  // DONE: 2012-09-30 by 
WillyFoobar added  virtual
./muse/plugin.h:313:      virtual ~PluginI();   // DONE: 2012-09-30 by 
WillyFoobar added  virtual
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Lmuse-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lmuse-developer

Reply via email to