Page MenuHomeFreeBSD

D49242.diff
No OneTemporary

D49242.diff

diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pq.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pq.c
--- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pq.c
+++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pq.c
@@ -37,7 +37,7 @@
if ((p = dt_zalloc(dtp, sizeof (dt_pq_t))) == NULL)
return (NULL);
- p->dtpq_items = dt_zalloc(dtp, size * sizeof (p->dtpq_items[0]));
+ p->dtpq_items = dt_zalloc(dtp, (size + 1) * sizeof (p->dtpq_items[0]));
if (p->dtpq_items == NULL) {
dt_free(dtp, p);
return (NULL);
@@ -73,9 +73,9 @@
{
uint_t i;
- assert(p->dtpq_last < p->dtpq_size);
-
i = p->dtpq_last++;
+ assert(i <= p->dtpq_size);
+
p->dtpq_items[i] = item;
while (i > 1 && dt_pq_getvalue(p, i) < dt_pq_getvalue(p, i / 2)) {

File Metadata

Mime Type
text/plain
Expires
Thu, Mar 20, 9:18 PM (18 h, 39 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17013207
Default Alt Text
D49242.diff (774 B)

Event Timeline