diff options
| author | Dana Jansens <danakj@orodu.net> | 2010-02-12 14:13:32 -0500 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2010-02-12 14:13:32 -0500 |
| commit | e61fd8874a8352fb5fa1c4b2ab84d29679fa7b0c (patch) | |
| tree | 2dbb90847597ead74c48c71d0a8e46a1cc711f67 /obrender | |
| parent | 890e13b919892887b773462bb866e849e0cb4d91 (diff) | |
use g_slice_new() instead of g_new() part 4
Diffstat (limited to 'obrender')
| -rw-r--r-- | obrender/color.c | 4 | ||||
| -rw-r--r-- | obrender/font.c | 6 | ||||
| -rw-r--r-- | obrender/image.c | 10 | ||||
| -rw-r--r-- | obrender/imagecache.c | 4 | ||||
| -rw-r--r-- | obrender/instance.c | 4 | ||||
| -rw-r--r-- | obrender/mask.c | 6 | ||||
| -rw-r--r-- | obrender/render.c | 10 | ||||
| -rw-r--r-- | obrender/render.h | 2 |
8 files changed, 24 insertions, 22 deletions
diff --git a/obrender/color.c b/obrender/color.c index 5e3f2169..dd0551ee 100644 --- a/obrender/color.c +++ b/obrender/color.c @@ -81,7 +81,7 @@ RrColor *RrColorNew(const RrInstance *inst, gint r, gint g, gint b) xcol.green = (g << 8) | g; xcol.blue = (b << 8) | b; if (XAllocColor(RrDisplay(inst), RrColormap(inst), &xcol)) { - out = g_new(RrColor, 1); + out = g_slice_new(RrColor); out->inst = inst; out->r = xcol.red >> 8; out->g = xcol.green >> 8; @@ -112,7 +112,7 @@ void RrColorFree(RrColor *c) if (c->pixel) XFreeColors(RrDisplay(c->inst), RrColormap(c->inst), &c->pixel, 1, 0); if (c->gc) XFreeGC(RrDisplay(c->inst), c->gc); - g_free(c); + g_slice_free(RrColor, c); } } } diff --git a/obrender/font.c b/obrender/font.c index cde0d030..892b2c10 100644 --- a/obrender/font.c +++ b/obrender/font.c @@ -68,7 +68,7 @@ RrFont *RrFontOpen(const RrInstance *inst, const gchar *name, gint size, PangoStyle pstyle; PangoAttrList *attrlist; - out = g_new(RrFont, 1); + out = g_slice_new(RrFont); out->inst = inst; out->ref = 1; out->font_desc = pango_font_description_new(); @@ -133,7 +133,7 @@ void RrFontClose(RrFont *f) if (--f->ref < 1) { g_object_unref(f->layout); pango_font_description_free(f->font_desc); - g_free(f); + g_slice_free(RrFont, f); } } } @@ -181,7 +181,7 @@ RrSize *RrFontMeasureString(const RrFont *f, const gchar *str, g_assert(!flow || maxwidth > 0); - size = g_new(RrSize, 1); + size = g_slice_new(RrSize); font_measure_full(f, str, &size->width, &size->height, shadow_x, shadow_y, flow, maxwidth); return size; diff --git a/obrender/image.c b/obrender/image.c index f86a3ee0..bb65e3c0 100644 --- a/obrender/image.c +++ b/obrender/image.c @@ -50,7 +50,7 @@ static void RrImagePicFree(RrImagePic *pic) if (pic) { g_free(pic->data); g_free(pic->name); - g_free(pic); + g_slice_free(RrImagePic, pic); } } @@ -235,7 +235,7 @@ static RrImagePic* ResizeImage(RrPixel32 *src, } } - pic = g_new(RrImagePic, 1); + pic = g_slice_new(RrImagePic); RrImagePicInit(pic, NULL, dstW, dstH, dststart); return pic; @@ -335,7 +335,7 @@ RrImage* RrImageNew(RrImageCache *cache) g_assert(cache != NULL); - self = g_new0(RrImage, 1); + self = g_slice_new0(RrImage); self->ref = 1; self->cache = cache; return self; @@ -369,7 +369,7 @@ void RrImageUnref(RrImage *self) RemovePicture(self, &self->original, 0, &self->n_original); while (self->n_resized > 0) RemovePicture(self, &self->resized, 0, &self->n_resized); - g_free(self); + g_slice_free(RrImage, self); } } @@ -399,7 +399,7 @@ static void AddPictureFromData(RrImage *self, const char *name, } /* add the new picture */ - pic = g_new(RrImagePic, 1); + pic = g_slice_new(RrImagePic); RrImagePicInit(pic, name, w, h, g_memdup(data, w*h*sizeof(RrPixel32))); AddPicture(self, &self->original, &self->n_original, pic); } diff --git a/obrender/imagecache.c b/obrender/imagecache.c index 036ac121..ad1183e4 100644 --- a/obrender/imagecache.c +++ b/obrender/imagecache.c @@ -29,7 +29,7 @@ RrImageCache* RrImageCacheNew(gint max_resized_saved) g_assert(max_resized_saved >= 0); - self = g_new(RrImageCache, 1); + self = g_slice_new(RrImageCache); self->ref = 1; self->max_resized_saved = max_resized_saved; self->pic_table = g_hash_table_new((GHashFunc)RrImagePicHash, @@ -54,7 +54,7 @@ void RrImageCacheUnref(RrImageCache *self) g_hash_table_destroy(self->name_table); self->name_table = NULL; - g_free(self); + g_slice_free(RrImageCache, self); } } diff --git a/obrender/instance.c b/obrender/instance.c index b867815c..af0420ae 100644 --- a/obrender/instance.c +++ b/obrender/instance.c @@ -59,7 +59,7 @@ RrInstance* RrInstanceNew (Display *display, gint screen) { g_type_init(); /* supposedly needed for pango but seems to work without */ - definst = g_new (RrInstance, 1); + definst = g_slice_new(RrInstance); definst->display = display; definst->screen = screen; @@ -214,7 +214,7 @@ void RrInstanceFree (RrInstance *inst) g_free(inst->pseudo_colors); g_hash_table_destroy(inst->color_hash); g_object_unref(inst->pango); - g_free(inst); + g_slice_free(RrInstance, inst); } } diff --git a/obrender/mask.c b/obrender/mask.c index b6e3c443..506d5b28 100644 --- a/obrender/mask.c +++ b/obrender/mask.c @@ -24,7 +24,7 @@ RrPixmapMask *RrPixmapMaskNew(const RrInstance *inst, gint w, gint h, const gchar *data) { - RrPixmapMask *m = g_new(RrPixmapMask, 1); + RrPixmapMask *m = g_slice_new(RrPixmapMask); m->inst = inst; m->width = w; m->height = h; @@ -40,7 +40,7 @@ void RrPixmapMaskFree(RrPixmapMask *m) if (m) { XFreePixmap(RrDisplay(m->inst), m->mask); g_free(m->data); - g_free(m); + g_slice_free(RrPixmapMask, m); } } @@ -70,7 +70,7 @@ void RrPixmapMaskDraw(Pixmap p, const RrTextureMask *m, const RrRect *area) RrPixmapMask *RrPixmapMaskCopy(const RrPixmapMask *src) { - RrPixmapMask *m = g_new(RrPixmapMask, 1); + RrPixmapMask *m = g_slice_new(RrPixmapMask); m->inst = src->inst; m->width = src->width; m->height = src->height; diff --git a/obrender/render.c b/obrender/render.c index 20002e32..58bf12ec 100644 --- a/obrender/render.c +++ b/obrender/render.c @@ -200,7 +200,7 @@ RrAppearance *RrAppearanceNew(const RrInstance *inst, gint numtex) { RrAppearance *out; - out = g_new0(RrAppearance, 1); + out = g_slice_new0(RrAppearance); out->inst = inst; out->textures = numtex; out->surface.bevel_light_adjust = 128; @@ -232,7 +232,7 @@ void RrAppearanceClearTextures(RrAppearance *a) RrAppearance *RrAppearanceCopy(RrAppearance *orig) { RrSurface *spo, *spc; - RrAppearance *copy = g_new(RrAppearance, 1); + RrAppearance *copy = g_slice_new(RrAppearance); copy->inst = orig->inst; @@ -333,7 +333,7 @@ void RrAppearanceFree(RrAppearance *a) RrColorFree(p->split_secondary); g_free(p->pixel_data); p->pixel_data = NULL; - g_free(a); + g_slice_free(RrAppearance, a); } } @@ -414,7 +414,7 @@ gint RrMinWidth(RrAppearance *a) a->texture[i].data.text.flow, a->texture[i].data.text.maxwidth); w = MAX(w, m->width); - g_free(m); + g_slice_free(RrSize, m); break; case RR_TEXTURE_RGBA: w += MAX(w, a->texture[i].data.rgba.width); @@ -463,7 +463,7 @@ gint RrMinHeight(RrAppearance *a) a->texture[i].data.text.flow, a->texture[i].data.text.maxwidth); h += MAX(h, m->height); - g_free(m); + g_slice_free(RrSize, m); } else h += MAX(h, diff --git a/obrender/render.h b/obrender/render.h index 64c2f6a1..cf9883a9 100644 --- a/obrender/render.h +++ b/obrender/render.h @@ -316,6 +316,8 @@ RrFont *RrFontOpen (const RrInstance *inst, const gchar *name, gint size, RrFontWeight weight, RrFontSlant slant); RrFont *RrFontOpenDefault (const RrInstance *inst); void RrFontClose (RrFont *f); +/*! Returns an RrSize, that was allocated with g_slice_new(). Use g_slice_free() to + free it. */ RrSize *RrFontMeasureString (const RrFont *f, const gchar *str, gint shadow_offset_x, gint shadow_offset_y, gboolean flow, gint maxwidth); |
