@@ -329,6 +329,8 @@ int32_t osKernelLock (void) {
329329 else {
330330 switch (xTaskGetSchedulerState ()) {
331331 case taskSCHEDULER_SUSPENDED :
332+ /* Suspend scheduler or increment nesting level */
333+ vTaskSuspendAll ();
332334 lock = 1 ;
333335 break ;
334336
@@ -361,12 +363,8 @@ int32_t osKernelUnlock (void) {
361363 switch (xTaskGetSchedulerState ()) {
362364 case taskSCHEDULER_SUSPENDED :
363365 lock = 1 ;
364-
365- if (xTaskResumeAll () != pdTRUE ) {
366- if (xTaskGetSchedulerState () == taskSCHEDULER_SUSPENDED ) {
367- lock = (int32_t )osError ;
368- }
369- }
366+ /* Resume scheduler or decrement nesting level */
367+ (void )xTaskResumeAll ();
370368 break ;
371369
372370 case taskSCHEDULER_RUNNING :
@@ -396,9 +394,8 @@ int32_t osKernelRestoreLock (int32_t lock) {
396394 switch (xTaskGetSchedulerState ()) {
397395 case taskSCHEDULER_SUSPENDED :
398396 if (lock == 0 ) {
399- if (xTaskResumeAll () != pdTRUE ) {
400- lock = (int32_t )osError ;
401- }
397+ /* Resume scheduler or decrement nesting level */
398+ (void )xTaskResumeAll ();
402399 }
403400 else {
404401 if (lock != 1 ) {
@@ -409,6 +406,7 @@ int32_t osKernelRestoreLock (int32_t lock) {
409406
410407 case taskSCHEDULER_RUNNING :
411408 if (lock == 1 ) {
409+ /* Suspend scheduler or increment nesting level */
412410 vTaskSuspendAll ();
413411 }
414412 else {
0 commit comments