Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=pacman-g2.git;a=commitdiff;h=4ef9ef61b323b78d89672b27dfffe1961cb56a4a

commit 4ef9ef61b323b78d89672b27dfffe1961cb56a4a
Author: Michel Hermier <herm...@frugalware.org>
Date:   Fri Nov 15 11:24:19 2013 +0100

libpacman/pacman: Drop PM_NETBUF structure in favour of pmdownload_state_t.

diff --git a/doc/libpacman-changes.txt b/doc/libpacman-changes.txt
index 5c9e86b..e62aeda 100644
--- a/doc/libpacman-changes.txt
+++ b/doc/libpacman-changes.txt
@@ -28,6 +28,8 @@ pacman_reg_match: Make arguments constants.

pacman_trans_cb_progress: Make 'pkgname' argument a constant.

+pacman_trans_cb_download: Changed the not usable PM_NETBUF *ctl to a const 
pmdownload_state_t *download_states (thougt only one supported for now).
+
==== Symbols added:

pmconflict_t: is now public and deprecate PM_CONFLICT.
@@ -48,6 +50,8 @@ PM_PKG_TRIGGERS: Access to package triggers list.

==== Symbols removed:

+PM_NETBUF: Remove due to code refactor so public API does not try to hide that 
it use libftp internal callback. See pacman_trans_cb_download changes.
+
PM_TRANS: Unused in the public API.

=== Behaviour changes
diff --git a/lib/libpacman/pacman.h b/lib/libpacman/pacman.h
index 0a87a66..80a31ef 100644
--- a/lib/libpacman/pacman.h
+++ b/lib/libpacman/pacman.h
@@ -49,6 +49,7 @@ extern "C" {
typedef struct __pmconflict_t pmconflict_t;
typedef struct __pmdb_t pmdb_t;
typedef struct __pmdepmissing_t pmdepmissing_t;
+typedef struct __pmdownload_state_t pmdownload_state_t;
typedef struct __pmgrp_t pmgrp_t;
typedef struct __pmlist_t pmlist_t;
typedef struct __pmpkg_t pmpkg_t;
@@ -62,7 +63,7 @@ typedef struct __pmgrp_t PM_GRP;
typedef struct __pmsyncpkg_t PM_SYNCPKG;
typedef struct __pmdepmissing_t PM_DEPMISS;
typedef struct __pmconflict_t PM_CONFLICT;
-typedef struct NetBuf PM_NETBUF;
+typedef struct __pmdownload_state_t PM_NETBUF;

/*
* Library
@@ -349,7 +350,7 @@ typedef void (*pacman_trans_cb_conv)(unsigned char, void *, 
void *, void *, int
typedef void (*pacman_trans_cb_progress)(unsigned char, const char *, int, int, 
int);

/* Download Progress callback */
-typedef int (*pacman_trans_cb_download)(PM_NETBUF *ctl, int xfered, void *arg);
+typedef int (*pacman_trans_cb_download)(const pmdownload_state_t 
*download_states, int xfered, void *arg);

/* Info parameters */
enum {
diff --git a/lib/libpacman/server.c b/lib/libpacman/server.c
index 2ac312d..c069f67 100644
--- a/lib/libpacman/server.c
+++ b/lib/libpacman/server.c
@@ -45,6 +45,9 @@
#include "util.h"
#include "handle.h"

+struct __pmdownload_state_t {
+};
+
FtpCallback pm_dlcb = NULL;
/* progress bar */
char *pm_dlfnm=NULL;
diff --git a/lib/libpacman/server.h b/lib/libpacman/server.h
index a3bf369..4f7cc03 100644
--- a/lib/libpacman/server.h
+++ b/lib/libpacman/server.h
@@ -43,6 +43,9 @@ typedef struct __pmserver_t {
char *path;
} pmserver_t;

+struct __pmdownload_state_t {
+};
+
pmserver_t *_pacman_server_new(char *url);
void _pacman_server_free(void *data);
int _pacman_downloadfiles(pmlist_t *servers, const char *localpath, pmlist_t 
*files, int skip);
diff --git a/src/pacman-g2/download.c b/src/pacman-g2/download.c
index 763b073..a5646cc 100644
--- a/src/pacman-g2/download.c
+++ b/src/pacman-g2/download.c
@@ -53,7 +53,7 @@ extern config_t *config;
extern unsigned int maxcols;

/* FIXME: log10() want float */
-int log_progress(PM_NETBUF *ctl, int xfered, void *arg)
+int log_progress(pmdownload_state_t *download_state, int xfered, void *arg)
{
int fsz = *(int*)arg;
int pct = ((float)(xfered+offset) / fsz) * 100;
@@ -75,9 +75,6 @@ int log_progress(PM_NETBUF *ctl, int xfered, void *arg)
return 0;
}

-       /* we don't need that parameter */
-       ctl=NULL;
-
if(strcmp(prev_fnm, sync_fnm) && lastpct == 100) {
lastpct = 0;
}
diff --git a/src/pacman-g2/download.h b/src/pacman-g2/download.h
index 12d9321..7ad04fc 100644
--- a/src/pacman-g2/download.h
+++ b/src/pacman-g2/download.h
@@ -30,7 +30,7 @@ extern float rate;
extern int xfered1;
extern unsigned int eta_h, eta_m, eta_s, remain, howmany;

-int log_progress(PM_NETBUF *ctl, int xfered, void *arg);
+int log_progress(pmdownload_state_t *download_state, int xfered, void *arg);

#endif /* _PM_DOWNLOAD_H */
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to