@@ -136,20 +136,19 @@ typedef struct AffinityPanel_ {
136136
137137static void AffinityPanel_delete (Object * cast ) {
138138 AffinityPanel * this = (AffinityPanel * ) cast ;
139- Panel * super = (Panel * ) this ;
140- Panel_done (super );
141139 Vector_delete (this -> cpuids );
142140 #ifdef HAVE_LIBHWLOC
143141 hwloc_bitmap_free (this -> workCpuset );
144142 MaskItem_delete ((Object * ) this -> topoRoot );
145143 #endif
144+ Panel_done (& this -> super );
146145 free (this );
147146}
148147
149148#ifdef HAVE_LIBHWLOC
150149
151150static void AffinityPanel_updateItem (AffinityPanel * this , MaskItem * item ) {
152- Panel * super = ( Panel * ) this ;
151+ Panel * super = & this -> super ;
153152
154153 item -> value = hwloc_bitmap_isincluded (item -> cpuset , this -> workCpuset ) ? 2 :
155154 hwloc_bitmap_intersects (item -> cpuset , this -> workCpuset ) ? 1 : 0 ;
@@ -170,7 +169,7 @@ static void AffinityPanel_updateTopo(AffinityPanel* this, MaskItem* item) {
170169#endif
171170
172171static void AffinityPanel_update (AffinityPanel * this , bool keepSelected ) {
173- Panel * super = ( Panel * ) this ;
172+ Panel * super = & this -> super ;
174173
175174 FunctionBar_setLabel (super -> currentBar , KEY_F (3 ), this -> topoView ? "Collapse/Expand" : "" );
176175
@@ -370,7 +369,8 @@ static const int AffinityPanelEvents[] = {13, 27, KEY_F(1), KEY_F(2), KEY_F(3)};
370369
371370Panel * AffinityPanel_new (Machine * host , const Affinity * affinity , int * width ) {
372371 AffinityPanel * this = AllocThis (AffinityPanel );
373- Panel * super = (Panel * ) this ;
372+ Panel * super = & this -> super ;
373+
374374 Panel_init (super , 1 , 1 , 1 , 1 , Class (MaskItem ), false, FunctionBar_new (AffinityPanelFunctions , AffinityPanelKeys , AffinityPanelEvents ));
375375
376376 this -> host = host ;
0 commit comments