Browse Source

Clarifications in API description of burn_set_signal_handling()

tags/ZeroSevenEight
Thomas Schmitt 10 years ago
parent
commit
196ef37108
2 changed files with 7 additions and 5 deletions
  1. +1
    -1
      cdrskin/cdrskin_timestamp.h
  2. +6
    -4
      libburn/libburn.h

+ 1
- 1
cdrskin/cdrskin_timestamp.h View File

@@ -1 +1 @@
#define Cdrskin_timestamP "2010.03.08.092608"
#define Cdrskin_timestamP "2010.03.09.140341"

+ 6
- 4
libburn/libburn.h View File

@@ -2808,12 +2808,14 @@ typedef int (*burn_abort_handler_t)(void *handle, int signum, int flag);
until the eventual signal event.
Before version 0.7.8 only action 0 was available. I.e. the built-in handler
waited for the drives to become idle and then performed exit(1) directly.
But FreeBSD 8.0 sometimes pauses the other threads until the signal handler
returns.
But during burn_disc_write() onto real CD or DVD, FreeBSD 8.0 pauses the
other threads until the signal handler returns.
The new actions try to avoid this deadlock. It is advised to use action 3
at least during burn_disc_write(), burn_disc_rease(), burn_disc_format():
burn_set_signal_handling(text, NULL, 0x30);
and call burn_is_aborting(0) frequently. If it replies 1, then call
burn_abort() and exit(1).
and to call burn_is_aborting(0) when the drive is BURN_DRIVE_IDLE.
If burn_is_aborting(0) returns 1, then call burn_abort() and exit(1).

@param handle Opaque handle eventually pointing to an application
provided memory object
@param handler A function to be called on signals. It will get handle as


Loading…
Cancel
Save