RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Per Øyvind Karlsen
  Root:   /v/rpm/cvs                       Email:  pkarl...@rpm5.org
  Module: rpm                              Date:   14-Mar-2009 18:19:21
  Branch: HEAD                             Handle: 2009031417192000

  Modified files:
    rpm/lib                 rpmrc.c

  Log:
    make code for %_prefer_buildarchs a bit nicer..

  Summary:
    Revision    Changes     Path
    2.265       +7  -7      rpm/lib/rpmrc.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmrc.c
  ============================================================================
  $ cvs diff -u -r2.264 -r2.265 rpmrc.c
  --- rpm/lib/rpmrc.c   14 Mar 2009 01:49:00 -0000      2.264
  +++ rpm/lib/rpmrc.c   14 Mar 2009 17:19:20 -0000      2.265
  @@ -852,20 +852,20 @@
   #if defined(SUPPORT_LIBCPUINFO)
        if (name)
        {
  -         char * pref = NULL;
  -         if(type == ARCH && strlen((pref = 
rpmExpand("%{?_prefer_buildarchs}", NULL))) > 0)
  +         if(type == ARCH)
            {
  -             ARGV_t archs = NULL;
                int i, j, n;
  +             ARGV_t archs = NULL;
  +             char *pref = rpmExpand("%{?_prefer_buildarchs}", NULL);
   
                (void) argvSplit(&archs, pref, ":");
  +             for(i = 0, n = argvCount(archs); (i < n && !*name); i++)
  +                 if((j = rpmPlatformScore(archs[i], platpat, nplatpat)) > 0)
  +                     *name = ((miRE)platpat)[j-1].pattern;
   
  -             for(i = 0, j = argvCount(archs); (i < j && !*name); i++)
  -                 if((n = rpmPlatformScore(archs[i], platpat, nplatpat)) > 0)
  -                     *name = ((miRE)platpat)[n-1].pattern;
                archs = argvFree(archs);
  +             pref = _free(pref);
            }
  -         if(pref) pref = _free(pref);
            if(!*name) *name = current[type];
        }
   #else
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to