New API call Xorriso_fetch_outlists()
This commit is contained in:
@ -23,6 +23,7 @@
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
#include <errno.h>
|
||||
#include <pthread.h>
|
||||
|
||||
#ifdef HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
@ -469,15 +470,26 @@ cannot:;
|
||||
int Xorriso_process_msg_queues(struct XorrisO *xorriso, int flag)
|
||||
{
|
||||
int ret, error_code= 0, os_errno= 0, count= 0, pass, imgid, tunneled;
|
||||
int name_prefix_code;
|
||||
int name_prefix_code, locked= 0, uret;
|
||||
char severity[80];
|
||||
|
||||
#ifdef Xorriso_with_libjtE
|
||||
char *msg;
|
||||
#endif
|
||||
|
||||
if(!xorriso->libs_are_started)
|
||||
return(1);
|
||||
if(!xorriso->libs_are_started) {
|
||||
ret= 1; goto ex;
|
||||
}
|
||||
|
||||
ret= pthread_mutex_lock(&(xorriso->lib_msg_queue_lock));
|
||||
if(ret != 0) {
|
||||
Xorriso_msgs_submit(xorriso, 0,
|
||||
"Cannot aquire mutex lock for processing library message queues",
|
||||
errno, "FATAL", 0);
|
||||
ret= -1; goto ex;
|
||||
}
|
||||
locked= 1;
|
||||
|
||||
for(pass= 0; pass< 3; pass++) {
|
||||
while(1) {
|
||||
tunneled= 0;
|
||||
@ -536,6 +548,17 @@ int Xorriso_process_msg_queues(struct XorrisO *xorriso, int flag)
|
||||
count);
|
||||
Xorriso_info(xorriso, 0);
|
||||
}
|
||||
ret= 1;
|
||||
ex:;
|
||||
if(locked) {
|
||||
uret= pthread_mutex_unlock(&(xorriso->lib_msg_queue_lock));
|
||||
if(uret != 0) {
|
||||
Xorriso_msgs_submit(xorriso, 0,
|
||||
"Cannot release mutex lock for processing library message queues",
|
||||
errno, "FATAL", 0);
|
||||
ret= -1;
|
||||
}
|
||||
}
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user