[pacman-dev] [PATCH] Remove redundant _alpm_strtrim() in be_local.c
Dan McGee
dpmcgee at gmail.com
Sun Feb 6 13:51:09 EST 2011
On Fri, Feb 4, 2011 at 9:48 PM, Pang Yan Han <pangyanhan at gmail.com> wrote:
> When reading the "desc" file in _alpm_local_db_read(), some
> strings are trimmed and checked for length > 0 before their
> use/duplication subsequently. They are then trimmed again
> when there is no need to.
>
> The following code snippet should illustrate it clearly:
>
> while(fgets(line, sizeof(line), fp) &&
> strlen(_alpm_strtrim(line))) {
>
> char *linedup;
> STRDUP(linedup, _alpm_strtrim(line), goto error);
> info->groups = alpm_list_add(info->groups, linedup);
> }
>
> This patch removes the redundant _alpm_strtrim() calls in
> _alpm_local_db_read() such as the one inside the STRDUP shown
> above.
>
> Signed-off-by: Pang Yan Han <pangyanhan at gmail.com>
Thanks! Applied.
> ---
> lib/libalpm/be_local.c | 18 +++++++++---------
> 1 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/lib/libalpm/be_local.c b/lib/libalpm/be_local.c
> index c7110fa..c005532 100644
> --- a/lib/libalpm/be_local.c
> +++ b/lib/libalpm/be_local.c
> @@ -539,7 +539,7 @@ int _alpm_local_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
> } else if(strcmp(line, "%GROUPS%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->groups = alpm_list_add(info->groups, linedup);
> }
> } else if(strcmp(line, "%URL%") == 0) {
> @@ -550,7 +550,7 @@ int _alpm_local_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
> } else if(strcmp(line, "%LICENSE%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->licenses = alpm_list_add(info->licenses, linedup);
> }
> } else if(strcmp(line, "%ARCH%") == 0) {
> @@ -595,30 +595,30 @@ int _alpm_local_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
> } else if(strcmp(line, "%REPLACES%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->replaces = alpm_list_add(info->replaces, linedup);
> }
> } else if(strcmp(line, "%DEPENDS%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> - pmdepend_t *dep = _alpm_splitdep(_alpm_strtrim(line));
> + pmdepend_t *dep = _alpm_splitdep(line);
> info->depends = alpm_list_add(info->depends, dep);
> }
> } else if(strcmp(line, "%OPTDEPENDS%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->optdepends = alpm_list_add(info->optdepends, linedup);
> }
> } else if(strcmp(line, "%CONFLICTS%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->conflicts = alpm_list_add(info->conflicts, linedup);
> }
> } else if(strcmp(line, "%PROVIDES%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->provides = alpm_list_add(info->provides, linedup);
> }
> }
> @@ -639,13 +639,13 @@ int _alpm_local_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
> if(strcmp(line, "%FILES%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->files = alpm_list_add(info->files, linedup);
> }
> } else if(strcmp(line, "%BACKUP%") == 0) {
> while(fgets(line, sizeof(line), fp) && strlen(_alpm_strtrim(line))) {
> char *linedup;
> - STRDUP(linedup, _alpm_strtrim(line), goto error);
> + STRDUP(linedup, line, goto error);
> info->backup = alpm_list_add(info->backup, linedup);
> }
> }
> --
> 1.7.4
>
>
>
More information about the pacman-dev
mailing list