pool->disttype = DISTTYPE_DEB;
# endif
#endif
+#ifdef RPM5
+ pool->obsoleteusesprovides = 1;
+ pool->implicitobsoleteusesprovides = 1;
+#endif
return pool;
}
pool_setvendorclasses(pool, 0);
queue_free(&pool->vendormap);
for (i = 0; i < POOL_TMPSPACEBUF; i++)
- sat_free(pool->tmpspacebuf[i]);
+ sat_free(pool->tmpspace.buf[i]);
for (i = 0; i < pool->nlanguages; i++)
free((char *)pool->languages[i]);
sat_free(pool->languages);
char *
pool_alloctmpspace(Pool *pool, int len)
{
- int n = pool->tmpspacen;
+ int n = pool->tmpspace.n;
if (!len)
return 0;
- if (len > pool->tmpspacelen[n])
+ if (len > pool->tmpspace.len[n])
{
- pool->tmpspacebuf[n] = sat_realloc(pool->tmpspacebuf[n], len + 32);
- pool->tmpspacelen[n] = len + 32;
+ pool->tmpspace.buf[n] = sat_realloc(pool->tmpspace.buf[n], len + 32);
+ pool->tmpspace.len[n] = len + 32;
}
- pool->tmpspacen = (n + 1) % POOL_TMPSPACEBUF;
- return pool->tmpspacebuf[n];
+ pool->tmpspace.n = (n + 1) % POOL_TMPSPACEBUF;
+ return pool->tmpspace.buf[n];
}
static char *
if (space)
{
int n, oldn;
- n = oldn = pool->tmpspacen;
+ n = oldn = pool->tmpspace.n;
for (;;)
{
if (!n--)
n = POOL_TMPSPACEBUF - 1;
if (n == oldn)
break;
- if (pool->tmpspacebuf[n] != space)
+ if (pool->tmpspace.buf[n] != space)
continue;
- if (len > pool->tmpspacelen[n])
+ if (len > pool->tmpspace.len[n])
{
- pool->tmpspacebuf[n] = sat_realloc(pool->tmpspacebuf[n], len + 32);
- pool->tmpspacelen[n] = len + 32;
+ pool->tmpspace.buf[n] = sat_realloc(pool->tmpspace.buf[n], len + 32);
+ pool->tmpspace.len[n] = len + 32;
}
- return pool->tmpspacebuf[n];
+ return pool->tmpspace.buf[n];
}
}
return 0;
void
pool_freetmpspace(Pool *pool, const char *space)
{
- int n = pool->tmpspacen;
+ int n = pool->tmpspace.n;
if (!space)
return;
n = (n + (POOL_TMPSPACEBUF - 1)) % POOL_TMPSPACEBUF;
- if (pool->tmpspacebuf[n] == space)
- pool->tmpspacen = n;
+ if (pool->tmpspace.buf[n] == space)
+ pool->tmpspace.n = n;
}
char *
Id dp;
} Datapos;
+struct _Pool_tmpspace {
+ char *buf[POOL_TMPSPACEBUF];
+ int len[POOL_TMPSPACEBUF];
+ int n;
+};
+
struct _Pool {
void *appdata; /* application private pointer */
void *nscallbackdata;
/* our tmp space string space */
- char *tmpspacebuf[POOL_TMPSPACEBUF];
- int tmpspacelen[POOL_TMPSPACEBUF];
- int tmpspacen;
+ struct _Pool_tmpspace tmpspace;
/* debug mask and callback */
int debugmask;