*/}}
Browse Source

Some stack fixes

YimingWu 2 months ago
parent
commit
9733504893
2 changed files with 9 additions and 9 deletions
  1. 2 2
      resources/la_properties.c
  2. 7 7
      resources/la_widgets.c

+ 2 - 2
resources/la_properties.c

@@ -1054,8 +1054,8 @@ tnsMaterialSlot* tnsget_ActiveMaterialSlot(tnsObject* o){
     return 0;
 }
 void tnsset_ActiveMaterialSlot(tnsObject* o, tnsMaterialSlot* ms){
-    if(o->Type==TNS_OBJECT_MESH) return memAssignRef(o,&((tnsMeshObject*)o)->CurrentMaterial,ms);
-    if(o->Type==TNS_OBJECT_SHAPE) return memAssignRef(o,&((tnsShapeObject*)o)->CurrentMaterial,ms);
+    if(o->Type==TNS_OBJECT_MESH){ memAssignRef(o,&((tnsMeshObject*)o)->CurrentMaterial,ms); return; }
+    if(o->Type==TNS_OBJECT_SHAPE){ memAssignRef(o,&((tnsShapeObject*)o)->CurrentMaterial,ms); return; }
 }
 void tnsset_ShapeObjectBackdrop(tnsShapeObject* o, int v){
     o->Backdrop=v; tnsInvalidateEvaluation(o); laNotifyUsers("tns.world");

+ 7 - 7
resources/la_widgets.c

@@ -244,7 +244,7 @@ int la_EnumGetMinWidth(laUiItem *ui){
     laBoxedTheme *bt = *ui->Type->Theme;
     laEnumProp *ep = ui->PP.LastPs->p;
     laEnumItem *i;
-    int W = 0; int tW;
+    int W = 0; int tW=0;
     int IsVertical = ui->Flags&LA_UI_FLAGS_TRANSPOSE;
     int IsExpand = ui->Flags&LA_UI_FLAGS_EXPAND;
     int IsCycle = ui->Flags&LA_UI_FLAGS_CYCLE;
@@ -315,7 +315,7 @@ int la_ButtonGetMinWidth(laUiItem *ui){
         if (buf[0]) label = transLate(buf);
     }elif (ui->PP.LastPs && ui->PP.LastPs->p->PropertyType == LA_PROP_OPERATOR){
         laOperatorProp *ap = ui->PP.LastPs->p;
-        if (ap->OperatorType && ap->OperatorType->ParseArgs){
+        if (ap && ap->OperatorType && ap->OperatorType->ParseArgs){
             ap->OperatorType->ParseArgs(ui->PP.RawThis, ui->Instructions, &IconID, buf);
             if (buf[0]) label = transLate(buf);
         }
@@ -500,7 +500,7 @@ real* la_UiStateColorState(laBoxedTheme* bt, laUiItem* ui, int State){
     return laThemeColor(bt, State);
 }
 real* la_UiStateColor(laBoxedTheme* bt, laUiItem* ui){
-    la_UiStateColorState(bt,ui,ui->State);
+    return la_UiStateColorState(bt,ui,ui->State);
 }
 real* la_UiTextColorPlain(laBoxedTheme* bt, laUiItem* ui){
     int flags = ui->Flags;
@@ -706,7 +706,7 @@ void la_IntDraw(laUiItem *ui, int h){
     char buf[48] = {0};
     char buf2[48] = {0};
     char prefix[8][64] = {0};
-    int Original;
+    int Original=0;
     int Ranged;
     int min, max;
     int s, State;
@@ -1535,7 +1535,7 @@ void la_NodeSocketDraw(laUiItem *ui, int h){
     laProp* p=ui->PP.LastPs->p; laPropContainer* pc=la_EnsureSubTarget(p,0);
     real* ColorBkg=0,*ColorSocket;
     if(pc==LA_PC_SOCKET_IN)   { laNodeInSocket*s=ui->PP.EndInstance; if(!s) return; ColorSocket=laThemeColor(bt,LA_BT_TEXT); ColorBkg=laThemeColor(bt, LA_BT_NORMAL); label=s->Label?s->Label->Ptr:""; }
-    elif(pc==LA_PC_SOCKET_OUT){ laNodeOutSocket*s=ui->PP.EndInstance; if(!s) return; ColorSocket=laThemeColor(bt,LA_BT_TEXT_ACTIVE); ColorBkg=laThemeColor(bt, LA_BT_ACTIVE); label=s->Label?s->Label->Ptr:""; }
+    else{ laNodeOutSocket*s=ui->PP.EndInstance; if(!s) return; ColorSocket=laThemeColor(bt,LA_BT_TEXT_ACTIVE); ColorBkg=laThemeColor(bt, LA_BT_ACTIVE); label=s->Label?s->Label->Ptr:""; }
 
     int IsDisabled=ui->Flags&LA_UI_FLAGS_DISABLED;
     int NoDecal = ui->Flags&LA_UI_FLAGS_NO_DECAL;
@@ -1920,7 +1920,7 @@ void la_ValueMeterType2Draw(laUiItem *ui, int h){
 }
 void la_ValueMeter2DDraw(laUiItem *ui, int h){
     laBoxedTheme *bt = (*ui->Type->Theme);
-    int DataI[8]; real Data[8];
+    int DataI[8]; real Data[8] = {0};
     int Len, i, W; real Seg;
     char buf[48] = {0};
     char buf2[48] = {0};
@@ -3498,7 +3498,7 @@ int OPMOD_NodeSocket(laOperator *a, laEvent *e){
     int lx=e->x,ly=e->y;
 
     laProp* p=ui->PP.LastPs->p; laPropContainer* pc=la_EnsureSubTarget(p,0);
-    laPropContainer* PCFind;
+    laPropContainer* PCFind=0;
     if(pc==LA_PC_SOCKET_IN)   { PCFind=LA_PC_SOCKET_OUT; }
     elif(pc==LA_PC_SOCKET_OUT){ PCFind=LA_PC_SOCKET_IN; }