[Git][wxwidgets/wxwidgets][master] 2 commits: Switch soon to become default checkout method on CircleCI

1 view
Skip to first unread message

Vadim Zeitlin (@_VZ_)

unread,
Oct 10, 2025, 4:10:15 AM (11 days ago) Oct 10
to wx-commi...@googlegroups.com

Vadim Zeitlin pushed to branch master at wxWidgets / wxWidgets

Commits:

  • 60946927
    by Vadim Zeitlin at 2025-10-10T10:02:17+02:00
    Switch soon to become default checkout method on CircleCI
    
    It is not used by default yet, so switch to it explicitly as using it
    results in much faster checkout times.
    
    See https://circleci.com/changelog/introducing-a-faster-checkout-option/
    
    Closes #25872.
    
  • f25aec1b
    by Federico Perini at 2025-10-10T10:05:27+02:00
    Avoid using already destroyed timers in wxOSX
    
    Check that the timer is still valid before using the associated object.
    
    This is necessary because already queued timer events are still
    delivered, even if wxTimer is destroyed.
    
    Closes #25871.
    

2 changed files:

Changes:

  • .circleci/config.yml
    ... ... @@ -10,7 +10,8 @@ jobs:
    10 10
               name: Install Git
    
    11 11
               command: dnf install -y git
    
    12 12
     
    
    13
    -      - checkout
    
    13
    +      - checkout:
    
    14
    +          method: blobless
    
    14 15
     
    
    15 16
           - run:
    
    16 17
               name: Install dependencies
    

  • src/osx/core/timer.cpp
    ... ... @@ -24,11 +24,17 @@ struct wxOSXTimerInfo
    24 24
         CFRunLoopTimerRef   m_timerRef;
    
    25 25
     };
    
    26 26
     
    
    27
    -void wxProcessTimer(CFRunLoopTimerRef WXUNUSED(theTimer), void *data)
    
    27
    +void wxProcessTimer(CFRunLoopTimerRef theTimer, void *data)
    
    28 28
     {
    
    29 29
         if ( data == nullptr )
    
    30 30
             return;
    
    31 31
     
    
    32
    +    // CFRunLoop can fire timer callbacks after CFRunLoopTimerInvalidate()
    
    33
    +    // has been called (e.g., if the callback was already queued when Stop() was called).
    
    34
    +    // Verify the timer is still valid before proceeding to avoid crashes.
    
    35
    +    if ( !CFRunLoopTimerIsValid(theTimer) )
    
    36
    +        return;
    
    37
    +
    
    32 38
         wxOSXTimerImpl* timer = (wxOSXTimerImpl*)data;
    
    33 39
     
    
    34 40
         if ( timer->IsOneShot() )
    

Reply all
Reply to author
Forward
0 new messages