summaryrefslogtreecommitdiff
path: root/libguile/async.h
diff options
context:
space:
mode:
authorMarius Vollmer <mvo@zagadka.de>2002-10-09 22:44:02 +0000
committerMarius Vollmer <mvo@zagadka.de>2002-10-09 22:44:02 +0000
commite292f7aac8b8d7fb3659afb84f6af0c0798f0ec7 (patch)
tree4bda844d4a99b4a4af64cb7801a50c4075a1e9ab /libguile/async.h
parent8ee25fb9f8ee291af6a1f0e49308bbc7d12e2e31 (diff)
downloadguile-e292f7aac8b8d7fb3659afb84f6af0c0798f0ec7.tar.gz
* async.h (scm_call_with_blocked_asyncs,
scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs, scm_c_call_with_unblocked_asyncs): New prototypes. (scm_mask_signals, scm_unmask_signals): Deprecated. (scm_mask_ints): Turned into a macro. * async.c (scm_mask_ints): Removed. (scm_run_asyncs): Do not set scm_mask_ints while running an async. this should not be necessary. (scm_async_click): Test block_asyncs instead of scm_mask_ints. (scm_mask_signals, scm_unmask_signals): Deprecated. Emit deprecation warning and check for errornous use. Set block_asyncs instead of scm_mask_ints. (increase_block, decrease_block, scm_call_with_blocked_asyncs, scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs, scm_c_call_with_unblocked_asyncs): New.
Diffstat (limited to 'libguile/async.h')
-rw-r--r--libguile/async.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/libguile/async.h b/libguile/async.h
index 64f1945af..a033b4e0d 100644
--- a/libguile/async.h
+++ b/libguile/async.h
@@ -51,7 +51,7 @@
-SCM_API unsigned int scm_mask_ints;
+#define scm_mask_ints (scm_root->block_asyncs != 0)
@@ -65,9 +65,18 @@ SCM_API SCM scm_system_async_mark_for_thread (SCM a, SCM thread);
SCM_API void scm_i_queue_async_cell (SCM cell, scm_root_state *);
SCM_API SCM scm_run_asyncs (SCM list_of_a);
SCM_API SCM scm_noop (SCM args);
+SCM_API SCM scm_call_with_blocked_asyncs (SCM proc);
+SCM_API SCM scm_call_with_unblocked_asyncs (SCM proc);
+void *scm_c_call_with_blocked_asyncs (void *(*p) (void *d), void *d);
+void *scm_c_call_with_unblocked_asyncs (void *(*p) (void *d), void *d);
+SCM_API void scm_init_async (void);
+
+#if (SCM_DEBUG_DEPRECATED == 0)
+
SCM_API SCM scm_unmask_signals (void);
SCM_API SCM scm_mask_signals (void);
-SCM_API void scm_init_async (void);
+
+#endif
#endif /* SCM_ASYNC_H */