@@ -355,8 +355,8 @@ function vars!(vars, cb::SymbolicContinuousCallback; op = Differential)
355355        vars! (vars, eq; op)
356356    end 
357357    for  aff in  (affects (cb), affect_negs (cb), initialize_affects (cb), finalize_affects (cb))
358-         if  aff isa  Vector{Equation} 
359-             for  eq in  aff
358+         if  aff isa  AffectSystem 
359+             for  eq in  vcat ( observed ( system ( aff)),  equations ( system (aff))) 
360360                vars! (vars, eq; op)
361361            end 
362362        elseif  aff != =  nothing 
@@ -453,18 +453,18 @@ function Base.show(io::IO, db::SymbolicDiscreteCallback)
453453end 
454454
455455function  vars! (vars, cb:: SymbolicDiscreteCallback ; op =  Differential)
456-     if  symbolic_type (cb . condition ) ==  NotSymbolic
457-         if  cb . condition  isa  AbstractArray
458-             for  eq in  cb . condition 
456+     if  symbolic_type (conditions (cb) ) ==  NotSymbolic
457+         if  conditions (cb)  isa  AbstractArray
458+             for  eq in  conditions (cb) 
459459                vars! (vars, eq; op)
460460            end 
461461        end 
462462    else 
463-         vars! (vars, cb . condition ; op)
463+         vars! (vars, conditions (cb) ; op)
464464    end 
465-     for  aff in  (cb . affects, cb . initialize, cb . finalize )
466-         if  aff isa  Vector{Equation} 
467-             for  eq in  aff
465+     for  aff in  (affects (cb),  initialize_affects (cb),  finalize_affects (cb) )
466+         if  aff isa  AffectSystem 
467+             for  eq in  vcat ( observed ( system ( aff)),  equations ( system (aff))) 
468468                vars! (vars, eq; op)
469469            end 
470470        elseif  aff != =  nothing 
@@ -709,7 +709,7 @@ function generate_callback(cbs::Vector{SymbolicContinuousCallback}, sys; kwargs.
709709        affect =  compile_affect (cb. affect, cb, sys, default =  (args... ) ->  ())
710710
711711        push! (affects, affect)
712-         push! (affect_negs, compile_affect (cb. affect_neg, cb, sys, default =  affect)) 
712+         push! (affect_negs, compile_affect (cb. affect_neg, cb, sys, default =  affect)
713713        push! (inits, compile_affect (cb. initialize, cb, sys, default =  nothing ))
714714        push! (finals, compile_affect (cb. finalize, cb, sys, default =  nothing ))
715715    end 
@@ -821,6 +821,8 @@ function compile_affect(
821821            for  idx in  save_idxs
822822                SciMLBase. save_discretes! (integ, idx)
823823            end 
824+ 
825+             sys isa  JumpSystem &&  reset_aggregated_jumps! (integrator)
824826        end 
825827    elseif  aff isa  FunctionalAffect ||  aff isa  ImperativeAffect
826828        compile_functional_affect (aff, cb, sys, dvs, ps; kwargs... )
0 commit comments