Ticket #4: rpm-sigaction.patch
| File rpm-sigaction.patch, 1.4 kB (added by atkac, 3 years ago) |
|---|
-
rpm-4.6.0-rc1/rpmio/rpmsq.c
old new 152 152 153 153 static struct rpmsig_s { 154 154 int signum; 155 void (*handler) (int signum, void * info, void * context);155 rpmsqAction_t handler; 156 156 int active; 157 157 struct sigaction oact; 158 158 } rpmsigTbl[] = { … … 254 254 continue; 255 255 256 256 (void) sigemptyset (&sa.sa_mask); 257 #ifdef SA_SIGINFO 257 258 sa.sa_flags = SA_SIGINFO; 259 #else 260 sa.sa_flags = 0; 261 #endif 258 262 sa.sa_sigaction = (void*)(handler != NULL ? handler : tbl->handler); 259 263 if (sigaction(tbl->signum, &sa, &tbl->oact) < 0) { 260 264 SUB_REF(tbl); -
rpm-4.6.0-rc1/rpmio/rpmsq.h
old new 7 7 */ 8 8 9 9 #include <rpm/rpmsw.h> 10 #include <signal.h> 10 11 11 12 #ifdef __cplusplus 12 13 extern "C" { … … 26 27 * @param info (siginfo_t) signal info 27 28 * @param context signal context 28 29 */ 30 #ifdef SA_SIGINFO 29 31 typedef void (*rpmsqAction_t) (int signum, void * info, void * context); 32 #else 33 typedef void (*rpmsqAction_t) (int signum); 34 #endif 30 35 31 36 extern int _rpmsq_debug; 32 37

