Threading changes.
[bpt/guile.git] / libguile / error.c
index 28b5bc1..300d333 100644 (file)
@@ -131,10 +131,7 @@ SCM_DEFINE (scm_strerror, "strerror", 1, 0, 0,
 {
   SCM ret;
   scm_frame_begin (0);
-  scm_frame_unwind_handler ((void(*)(void*)) scm_mutex_unlock,
-                            &scm_i_misc_mutex,
-                            SCM_F_WIND_EXPLICITLY);
-  scm_mutex_lock (&scm_i_misc_mutex);
+  scm_frame_pthread_mutex_lock (&scm_i_misc_mutex);
 
   ret = scm_from_locale_string (SCM_I_STRERROR (scm_to_int (err)));