@@ -3152,17 +3152,13 @@ def run_pdb_script(self, script, commands,
31523152            self .addCleanup (os_helper .unlink , '.pdbrc' )
31533153        self .addCleanup (os_helper .unlink , filename )
31543154
3155-         homesave  =  None 
3156-         if  remove_home :
3157-             homesave  =  os .environ .pop ('HOME' , None )
3158-         try :
3155+         with  os_helper .EnvironmentVarGuard () as  env :
3156+             if  remove_home :
3157+                 env .unset ('HOME' )
31593158            if  script_args  is  None :
31603159                script_args  =  []
31613160            stdout , stderr  =  self ._run_pdb ([filename ] +  script_args , commands , expected_returncode , extra_env )
3162-         finally :
3163-             if  homesave  is  not None :
3164-                 os .environ ['HOME' ] =  homesave 
3165-         return  stdout , stderr 
3161+             return  stdout , stderr 
31663162
31673163    def  run_pdb_module (self , script , commands ):
31683164        """Runs the script code as part of a module""" 
@@ -3585,17 +3581,14 @@ def test_readrc_kwarg(self):
35853581        self .assertIn ("NameError: name 'invalid' is not defined" , stdout )
35863582
35873583    def  test_readrc_homedir (self ):
3588-         save_home   =   os . environ . pop ( "HOME" ,  None ) 
3589-         with   os_helper . temp_dir ()  as   temp_dir ,  patch ( "os.path.expanduser" ): 
3590-             rc_path   =   os . path . join ( temp_dir , ".pdbrc" ) 
3591-             os .path .expanduser . return_value   =   rc_path 
3592-             try : 
3584+         with   os_helper . EnvironmentVarGuard ()  as   env : 
3585+              env . unset ( "HOME" ) 
3586+             with   os_helper . temp_dir ()  as   temp_dir , patch ( "os.path.expanduser" ): 
3587+                  rc_path   =   os .path .join ( temp_dir ,  ".pdbrc" ) 
3588+                  os . path . expanduser . return_value   =   rc_path 
35933589                with  open (rc_path , "w" ) as  f :
35943590                    f .write ("invalid" )
35953591                self .assertEqual (pdb .Pdb ().rcLines [0 ], "invalid" )
3596-             finally :
3597-                 if  save_home  is  not None :
3598-                     os .environ ["HOME" ] =  save_home 
35993592
36003593    def  test_header (self ):
36013594        stdout  =  StringIO ()
0 commit comments