@@ -207,7 +207,7 @@ final class _PersistentReference<Key: SharedReaderKey>:
207207      case  let  . failure( error) : 
208208        loadError =  error
209209      case  let  . success( newValue) : 
210-         loadError =  nil 
210+         if  _loadError  !=   nil   {   loadError =  nil   } 
211211        wrappedValue =  newValue ??  initialValue
212212      } 
213213    } 
@@ -299,7 +299,7 @@ final class _PersistentReference<Key: SharedReaderKey>:
299299          } 
300300        ) 
301301      } 
302-       loadError =  nil 
302+       if  _loadError  !=   nil   {   loadError =  nil   } 
303303    }  catch  { 
304304      loadError =  error
305305      throw  error
@@ -308,9 +308,6 @@ final class _PersistentReference<Key: SharedReaderKey>:
308308
309309  func  touch( )  { 
310310    withMutation ( keyPath:  \. value)  { } 
311-     withMutation ( keyPath:  \. _isLoading)  { } 
312-     withMutation ( keyPath:  \. _loadError)  { } 
313-     withMutation ( keyPath:  \. _saveError)  { } 
314311  } 
315312
316313  func  access< Member> ( 
@@ -405,8 +402,8 @@ extension _PersistentReference: MutableReference, Equatable where Key: SharedKey
405402            guard  let  self else  {  return  } 
406403            switch  result { 
407404            case  . success: 
408-               loadError =  nil 
409-               saveError =  nil 
405+               if  _loadError  !=   nil   {   loadError =  nil   } 
406+               if  _saveError  !=   nil   {   saveError =  nil   } 
410407            case  let  . failure( error) : 
411408              saveError =  error
412409            } 
@@ -420,7 +417,7 @@ extension _PersistentReference: MutableReference, Equatable where Key: SharedKey
420417  } 
421418
422419  func  save( )  async  throws  { 
423-     saveError =  nil 
420+     if  _saveError  !=   nil   {   saveError =  nil   } 
424421    do  { 
425422      _ =  try   await  withUnsafeThrowingContinuation  {  continuation in 
426423        let  key  =  key
@@ -436,7 +433,7 @@ extension _PersistentReference: MutableReference, Equatable where Key: SharedKey
436433      saveError =  error
437434      throw  error
438435    } 
439-     loadError =  nil 
436+     if  _loadError  !=   nil   {   loadError =  nil   } 
440437  } 
441438
442439  static  func  ==  ( lhs:  _PersistentReference ,  rhs:  _PersistentReference )  ->  Bool  { 
0 commit comments