Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-frontend.git;a=commitdiff;h=64a30fc1c35f0cde7a3193b2f1427d8c8063637f

commit 64a30fc1c35f0cde7a3193b2f1427d8c8063637f
Author: James Buren <r...@frugalware.org>
Date:   Mon Sep 26 11:24:19 2011 -0500

implement log callback in initialization

diff --git a/pacman-frontend.c b/pacman-frontend.c
index 1e6324c..d162041 100644
--- a/pacman-frontend.c
+++ b/pacman-frontend.c
@@ -7,6 +7,7 @@ static struct
{
PM_DB **sync;
PM_DB *local;
+       pacman_cb_log log;
} G;

static void *
@@ -67,8 +68,16 @@ _cb_db_register(const char *section,PM_DB *db)
G.sync[len++] = db;
}

+static void
+_cb_log(unsigned short a, char *b)
+{
+#ifndef NDEBUG
+       a = a, b = b;
+#endif
+}
+
int
-pacman_frontend_initialize(const char *root,const char *config)
+pacman_frontend_initialize(const char *root,const char *config,pacman_cb_log 
log)
{
if(pacman_initialize(root) == -1)
return -1;
@@ -83,6 +92,16 @@ pacman_frontend_initialize(const char *root,const char 
*config)

_cb_db_register(0,0);

+       log = log ? log : _cb_log;
+
+       if(pacman_set_option(PM_OPT_LOGCB,(unsigned long)log) == -1)
+               return -1;
+
+       if(pacman_set_option(PM_OPT_LOGMASK,PM_LOG_ERROR | PM_LOG_WARNING) == 
-1)
+               return -1;
+
+       G.log = log;
+
return 0;
}

diff --git a/pacman-frontend.h b/pacman-frontend.h
index eadcd31..22312be 100644
--- a/pacman-frontend.h
+++ b/pacman-frontend.h
@@ -2,6 +2,6 @@
#define _pacman_frontend_header_
#include <pacman.h>

-int pacman_frontend_initialize(const char *root,const char *config);
+int pacman_frontend_initialize(const char *root,const char 
*config,pacman_cb_log log);
int pacman_frontend_synchronize_dbs(void);
#endif
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to