mirror of https://github.com/GNOME/gimp.git
app/base/temp-buf.c app/base/tile-manager.c accept NULL in all
2007-11-16 Michael Natterer <mitch@gimp.org> * app/base/temp-buf.c * app/base/tile-manager.c * app/core/gimpobject.c: accept NULL in all get_memsize() functions. * app/core/gimp-utils.[ch]: ditto. Added gimp_string_get_memsize(). * app/core/gimp.c * app/core/gimpbrush.c * app/core/gimpbuffer.c * app/core/gimpcontainer.c * app/core/gimpcontext.c * app/core/gimpdata.c * app/core/gimpdrawable.c * app/core/gimpdrawablemodundo.c * app/core/gimpdrawableundo.c * app/core/gimpimage.c * app/core/gimpitempropundo.c * app/core/gimplayer.c * app/core/gimpmaskundo.c * app/core/gimppalette.c * app/core/gimpparasitelist.c * app/core/gimppattern.c * app/core/gimppreviewcache.c * app/core/gimpundo.c * app/core/gimpundostack.c * app/core/gimpviewable.c * app/pdb/gimpprocedure.c * app/plug-in/gimpplugindef.c * app/plug-in/gimppluginmanager.c * app/plug-in/gimppluginprocedure.c * app/text/gimptext.c * app/text/gimptextlayer.c * app/text/gimptextundo.c * app/vectors/gimpvectorsmodundo.c: simplify GimpObject::get_memsize() implementations accordingly. * app/core/gimpimageundo.c: ditto. Always keep around colormaps in chunks of GIMP_IMAGE_COLORMAP_SIZE to be coonsistent with the other colormap handling code. svn path=/trunk/; revision=24174
This commit is contained in:
parent
b9973273dd
commit
036085fd9e
42
ChangeLog
42
ChangeLog
|
@ -1,3 +1,45 @@
|
||||||
|
2007-11-16 Michael Natterer <mitch@gimp.org>
|
||||||
|
|
||||||
|
* app/base/temp-buf.c
|
||||||
|
* app/base/tile-manager.c
|
||||||
|
* app/core/gimpobject.c: accept NULL in all get_memsize() functions.
|
||||||
|
|
||||||
|
* app/core/gimp-utils.[ch]: ditto. Added gimp_string_get_memsize().
|
||||||
|
|
||||||
|
* app/core/gimp.c
|
||||||
|
* app/core/gimpbrush.c
|
||||||
|
* app/core/gimpbuffer.c
|
||||||
|
* app/core/gimpcontainer.c
|
||||||
|
* app/core/gimpcontext.c
|
||||||
|
* app/core/gimpdata.c
|
||||||
|
* app/core/gimpdrawable.c
|
||||||
|
* app/core/gimpdrawablemodundo.c
|
||||||
|
* app/core/gimpdrawableundo.c
|
||||||
|
* app/core/gimpimage.c
|
||||||
|
* app/core/gimpitempropundo.c
|
||||||
|
* app/core/gimplayer.c
|
||||||
|
* app/core/gimpmaskundo.c
|
||||||
|
* app/core/gimppalette.c
|
||||||
|
* app/core/gimpparasitelist.c
|
||||||
|
* app/core/gimppattern.c
|
||||||
|
* app/core/gimppreviewcache.c
|
||||||
|
* app/core/gimpundo.c
|
||||||
|
* app/core/gimpundostack.c
|
||||||
|
* app/core/gimpviewable.c
|
||||||
|
* app/pdb/gimpprocedure.c
|
||||||
|
* app/plug-in/gimpplugindef.c
|
||||||
|
* app/plug-in/gimppluginmanager.c
|
||||||
|
* app/plug-in/gimppluginprocedure.c
|
||||||
|
* app/text/gimptext.c
|
||||||
|
* app/text/gimptextlayer.c
|
||||||
|
* app/text/gimptextundo.c
|
||||||
|
* app/vectors/gimpvectorsmodundo.c: simplify
|
||||||
|
GimpObject::get_memsize() implementations accordingly.
|
||||||
|
|
||||||
|
* app/core/gimpimageundo.c: ditto. Always keep around colormaps in
|
||||||
|
chunks of GIMP_IMAGE_COLORMAP_SIZE to be coonsistent with the
|
||||||
|
other colormap handling code.
|
||||||
|
|
||||||
2007-11-16 Sven Neumann <sven@gimp.org>
|
2007-11-16 Sven Neumann <sven@gimp.org>
|
||||||
|
|
||||||
* app/base/lut-funcs.c (equalize_lut_setup): make sure we don't
|
* app/base/lut-funcs.c (equalize_lut_setup): make sure we don't
|
||||||
|
|
|
@ -373,14 +373,11 @@ temp_buf_data_clear (TempBuf *temp_buf)
|
||||||
gsize
|
gsize
|
||||||
temp_buf_get_memsize (TempBuf *temp_buf)
|
temp_buf_get_memsize (TempBuf *temp_buf)
|
||||||
{
|
{
|
||||||
gsize memsize = 0;
|
if (temp_buf)
|
||||||
|
return (sizeof (TempBuf) +
|
||||||
|
(gsize) temp_buf->bytes * temp_buf->width * temp_buf->height);
|
||||||
|
|
||||||
g_return_val_if_fail (temp_buf != NULL, 0);
|
return 0;
|
||||||
|
|
||||||
memsize += (sizeof (TempBuf)
|
|
||||||
+ (gsize) temp_buf->bytes * temp_buf->width * temp_buf->height);
|
|
||||||
|
|
||||||
return memsize;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -569,7 +569,8 @@ tile_manager_get_memsize (const TileManager *tm,
|
||||||
/* the tile manager itself */
|
/* the tile manager itself */
|
||||||
gint64 memsize = sizeof (TileManager);
|
gint64 memsize = sizeof (TileManager);
|
||||||
|
|
||||||
g_return_val_if_fail (tm != NULL, 0);
|
if (! tm)
|
||||||
|
return 0;
|
||||||
|
|
||||||
/* the array of tiles */
|
/* the array of tiles */
|
||||||
memsize += (gint64) tm->ntile_rows * tm->ntile_cols * (sizeof (Tile) +
|
memsize += (gint64) tm->ntile_rows * tm->ntile_cols * (sizeof (Tile) +
|
||||||
|
|
|
@ -59,38 +59,38 @@
|
||||||
|
|
||||||
gint64
|
gint64
|
||||||
gimp_g_type_instance_get_memsize (GTypeInstance *instance)
|
gimp_g_type_instance_get_memsize (GTypeInstance *instance)
|
||||||
|
{
|
||||||
|
if (instance)
|
||||||
{
|
{
|
||||||
GTypeQuery type_query;
|
GTypeQuery type_query;
|
||||||
gint64 memsize = 0;
|
|
||||||
|
|
||||||
g_return_val_if_fail (instance != NULL, 0);
|
|
||||||
|
|
||||||
g_type_query (G_TYPE_FROM_INSTANCE (instance), &type_query);
|
g_type_query (G_TYPE_FROM_INSTANCE (instance), &type_query);
|
||||||
|
|
||||||
memsize += type_query.instance_size;
|
return type_query.instance_size;
|
||||||
|
}
|
||||||
|
|
||||||
return memsize;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
gint64
|
gint64
|
||||||
gimp_g_object_get_memsize (GObject *object)
|
gimp_g_object_get_memsize (GObject *object)
|
||||||
{
|
{
|
||||||
gint64 memsize = 0;
|
if (object)
|
||||||
|
return gimp_g_type_instance_get_memsize ((GTypeInstance *) object);
|
||||||
|
|
||||||
g_return_val_if_fail (G_IS_OBJECT (object), 0);
|
return 0;
|
||||||
|
|
||||||
return memsize + gimp_g_type_instance_get_memsize ((GTypeInstance *) object);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
gint64
|
gint64
|
||||||
gimp_g_hash_table_get_memsize (GHashTable *hash,
|
gimp_g_hash_table_get_memsize (GHashTable *hash,
|
||||||
gint64 data_size)
|
gint64 data_size)
|
||||||
{
|
{
|
||||||
g_return_val_if_fail (hash != NULL, 0);
|
if (hash)
|
||||||
|
|
||||||
return (2 * sizeof (gint) +
|
return (2 * sizeof (gint) +
|
||||||
5 * sizeof (gpointer) +
|
5 * sizeof (gpointer) +
|
||||||
g_hash_table_size (hash) * (3 * sizeof (gpointer) + data_size));
|
g_hash_table_size (hash) * (3 * sizeof (gpointer) + data_size));
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
|
@ -118,9 +118,11 @@ gimp_g_hash_table_get_memsize_foreach (GHashTable *hash,
|
||||||
{
|
{
|
||||||
HashMemsize memsize;
|
HashMemsize memsize;
|
||||||
|
|
||||||
g_return_val_if_fail (hash != NULL, 0);
|
|
||||||
g_return_val_if_fail (func != NULL, 0);
|
g_return_val_if_fail (func != NULL, 0);
|
||||||
|
|
||||||
|
if (! hash)
|
||||||
|
return 0;
|
||||||
|
|
||||||
memsize.func = func;
|
memsize.func = func;
|
||||||
memsize.memsize = 0;
|
memsize.memsize = 0;
|
||||||
memsize.gui_size = 0;
|
memsize.gui_size = 0;
|
||||||
|
@ -182,14 +184,14 @@ gimp_g_list_get_memsize_foreach (GList *list,
|
||||||
gint64
|
gint64
|
||||||
gimp_g_value_get_memsize (GValue *value)
|
gimp_g_value_get_memsize (GValue *value)
|
||||||
{
|
{
|
||||||
gint64 memsize = sizeof (GValue);
|
gint64 memsize = 0;
|
||||||
|
|
||||||
|
if (! value)
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (G_VALUE_HOLDS_STRING (value))
|
if (G_VALUE_HOLDS_STRING (value))
|
||||||
{
|
{
|
||||||
const gchar *str = g_value_get_string (value);
|
memsize += gimp_string_get_memsize (g_value_get_string (value));
|
||||||
|
|
||||||
if (str)
|
|
||||||
memsize += strlen (str) + 1;
|
|
||||||
}
|
}
|
||||||
else if (G_VALUE_HOLDS_BOXED (value))
|
else if (G_VALUE_HOLDS_BOXED (value))
|
||||||
{
|
{
|
||||||
|
@ -203,11 +205,8 @@ gimp_g_value_get_memsize (GValue *value)
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_PARASITE (value))
|
else if (GIMP_VALUE_HOLDS_PARASITE (value))
|
||||||
{
|
{
|
||||||
GimpParasite *parasite = g_value_get_boxed (value);
|
memsize += gimp_parasite_get_memsize (g_value_get_boxed (value),
|
||||||
|
NULL);
|
||||||
if (parasite)
|
|
||||||
memsize += (sizeof (GimpParasite) + parasite->size +
|
|
||||||
parasite->name ? (strlen (parasite->name) + 1) : 0);
|
|
||||||
}
|
}
|
||||||
else if (GIMP_VALUE_HOLDS_ARRAY (value) ||
|
else if (GIMP_VALUE_HOLDS_ARRAY (value) ||
|
||||||
GIMP_VALUE_HOLDS_INT8_ARRAY (value) ||
|
GIMP_VALUE_HOLDS_INT8_ARRAY (value) ||
|
||||||
|
@ -237,7 +236,7 @@ gimp_g_value_get_memsize (GValue *value)
|
||||||
memsize += array->length * sizeof (gchar *);
|
memsize += array->length * sizeof (gchar *);
|
||||||
|
|
||||||
for (i = 0; i < array->length; i++)
|
for (i = 0; i < array->length; i++)
|
||||||
memsize += strlen (tmp[i]) + 1;
|
memsize += gimp_string_get_memsize (tmp[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -253,51 +252,48 @@ gimp_g_value_get_memsize (GValue *value)
|
||||||
G_STRFUNC, G_VALUE_TYPE_NAME (value));
|
G_STRFUNC, G_VALUE_TYPE_NAME (value));
|
||||||
}
|
}
|
||||||
|
|
||||||
return memsize;
|
return memsize + sizeof (GValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
gint64
|
gint64
|
||||||
gimp_g_param_spec_get_memsize (GParamSpec *pspec)
|
gimp_g_param_spec_get_memsize (GParamSpec *pspec)
|
||||||
{
|
{
|
||||||
const gchar *str;
|
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
|
if (! pspec)
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (! (pspec->flags & G_PARAM_STATIC_NAME))
|
if (! (pspec->flags & G_PARAM_STATIC_NAME))
|
||||||
{
|
memsize += gimp_string_get_memsize (g_param_spec_get_name (pspec));
|
||||||
str = g_param_spec_get_name (pspec);
|
|
||||||
if (str)
|
|
||||||
memsize += strlen (str) + 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (! (pspec->flags & G_PARAM_STATIC_NICK))
|
if (! (pspec->flags & G_PARAM_STATIC_NICK))
|
||||||
{
|
memsize += gimp_string_get_memsize (g_param_spec_get_nick (pspec));
|
||||||
str = g_param_spec_get_nick (pspec);
|
|
||||||
if (str)
|
|
||||||
memsize += strlen (str) + 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (! (pspec->flags & G_PARAM_STATIC_BLURB))
|
if (! (pspec->flags & G_PARAM_STATIC_BLURB))
|
||||||
{
|
memsize += gimp_string_get_memsize (g_param_spec_get_blurb (pspec));
|
||||||
str = g_param_spec_get_blurb (pspec);
|
|
||||||
if (str)
|
|
||||||
memsize += strlen (str) + 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
return memsize + gimp_g_type_instance_get_memsize ((GTypeInstance *) pspec);
|
return memsize + gimp_g_type_instance_get_memsize ((GTypeInstance *) pspec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gint64
|
||||||
|
gimp_string_get_memsize (const gchar *string)
|
||||||
|
{
|
||||||
|
if (string)
|
||||||
|
return strlen (string) + 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
gint64
|
gint64
|
||||||
gimp_parasite_get_memsize (GimpParasite *parasite,
|
gimp_parasite_get_memsize (GimpParasite *parasite,
|
||||||
gint64 *gui_size)
|
gint64 *gui_size)
|
||||||
{
|
{
|
||||||
gint64 memsize = 0;
|
|
||||||
|
|
||||||
if (parasite)
|
if (parasite)
|
||||||
memsize += (sizeof (GimpParasite) +
|
return (sizeof (GimpParasite) +
|
||||||
strlen (parasite->name) + 1 +
|
gimp_string_get_memsize (parasite->name) +
|
||||||
parasite->size);
|
parasite->size);
|
||||||
|
|
||||||
return memsize;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,7 @@ gint64 gimp_g_list_get_memsize_foreach (GList *slist,
|
||||||
gint64 gimp_g_value_get_memsize (GValue *value);
|
gint64 gimp_g_value_get_memsize (GValue *value);
|
||||||
gint64 gimp_g_param_spec_get_memsize (GParamSpec *pspec);
|
gint64 gimp_g_param_spec_get_memsize (GParamSpec *pspec);
|
||||||
|
|
||||||
|
gint64 gimp_string_get_memsize (const gchar *string);
|
||||||
gint64 gimp_parasite_get_memsize (GimpParasite *parasite,
|
gint64 gimp_parasite_get_memsize (GimpParasite *parasite,
|
||||||
gint64 *gui_size);
|
gint64 *gui_size);
|
||||||
|
|
||||||
|
|
|
@ -438,49 +438,49 @@ gimp_get_memsize (GimpObject *object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
memsize += gimp_g_object_get_memsize (G_OBJECT (gimp->module_db));
|
memsize += gimp_g_object_get_memsize (G_OBJECT (gimp->module_db));
|
||||||
memsize += gimp_g_object_get_memsize (G_OBJECT (gimp->plug_in_manager));
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->plug_in_manager),
|
||||||
|
gui_size);
|
||||||
|
|
||||||
memsize += gimp_g_hash_table_get_memsize (gimp->image_table, 0);
|
memsize += gimp_g_hash_table_get_memsize (gimp->image_table, 0);
|
||||||
memsize += gimp_g_hash_table_get_memsize (gimp->item_table, 0);
|
memsize += gimp_g_hash_table_get_memsize (gimp->item_table, 0);
|
||||||
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->displays), gui_size);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->displays), gui_size);
|
||||||
|
|
||||||
if (gimp->global_buffer)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->global_buffer),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->global_buffer),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
memsize += (gimp_object_get_memsize (GIMP_OBJECT (gimp->named_buffers),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->named_buffers),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->fonts),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->fonts),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->brush_factory),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->brush_factory),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->pattern_factory),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->pattern_factory),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->gradient_factory),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->gradient_factory),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->palette_factory),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->palette_factory),
|
||||||
gui_size));
|
gui_size);
|
||||||
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->pdb), gui_size);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->pdb), gui_size);
|
||||||
|
|
||||||
memsize += (gimp_object_get_memsize (GIMP_OBJECT (gimp->tool_info_list),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->tool_info_list),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->standard_tool_info),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->standard_tool_info),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->documents),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->documents),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->templates),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->templates),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->image_new_last_template),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->image_new_last_template),
|
||||||
gui_size));
|
gui_size);
|
||||||
|
|
||||||
memsize += gimp_g_list_get_memsize (gimp->context_list, 0);
|
memsize += gimp_g_list_get_memsize (gimp->context_list, 0);
|
||||||
|
|
||||||
memsize += (gimp_object_get_memsize (GIMP_OBJECT (gimp->default_context),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->default_context),
|
||||||
gui_size) +
|
gui_size);
|
||||||
gimp_object_get_memsize (GIMP_OBJECT (gimp->user_context),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (gimp->user_context),
|
||||||
gui_size));
|
gui_size);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -211,10 +211,7 @@ gimp_brush_get_memsize (GimpObject *object,
|
||||||
GimpBrush *brush = GIMP_BRUSH (object);
|
GimpBrush *brush = GIMP_BRUSH (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (brush->mask)
|
|
||||||
memsize += temp_buf_get_memsize (brush->mask);
|
memsize += temp_buf_get_memsize (brush->mask);
|
||||||
|
|
||||||
if (brush->pixmap)
|
|
||||||
memsize += temp_buf_get_memsize (brush->pixmap);
|
memsize += temp_buf_get_memsize (brush->pixmap);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -113,7 +113,6 @@ gimp_buffer_get_memsize (GimpObject *object,
|
||||||
GimpBuffer *buffer = GIMP_BUFFER (object);
|
GimpBuffer *buffer = GIMP_BUFFER (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (buffer->tiles)
|
|
||||||
memsize += tile_manager_get_memsize (buffer->tiles, FALSE);
|
memsize += tile_manager_get_memsize (buffer->tiles, FALSE);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -21,8 +21,6 @@
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include <glib-object.h>
|
#include <glib-object.h>
|
||||||
|
|
||||||
#include "libgimpconfig/gimpconfig.h"
|
#include "libgimpconfig/gimpconfig.h"
|
||||||
|
@ -30,6 +28,7 @@
|
||||||
#include "core-types.h"
|
#include "core-types.h"
|
||||||
|
|
||||||
#include "gimp.h"
|
#include "gimp.h"
|
||||||
|
#include "gimp-utils.h"
|
||||||
#include "gimpcontainer.h"
|
#include "gimpcontainer.h"
|
||||||
#include "gimpmarshal.h"
|
#include "gimpmarshal.h"
|
||||||
|
|
||||||
|
@ -298,7 +297,7 @@ gimp_container_get_memsize (GimpObject *object,
|
||||||
|
|
||||||
memsize += (sizeof (GList) +
|
memsize += (sizeof (GList) +
|
||||||
sizeof (GimpContainerHandler) +
|
sizeof (GimpContainerHandler) +
|
||||||
strlen (handler->signame) + 1);
|
gimp_string_get_memsize (handler->signame));
|
||||||
}
|
}
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -21,8 +21,6 @@
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include <glib-object.h>
|
#include <glib-object.h>
|
||||||
|
|
||||||
#include "libgimpbase/gimpbase.h"
|
#include "libgimpbase/gimpbase.h"
|
||||||
|
@ -34,6 +32,7 @@
|
||||||
#include "config/gimpcoreconfig.h"
|
#include "config/gimpcoreconfig.h"
|
||||||
|
|
||||||
#include "gimp.h"
|
#include "gimp.h"
|
||||||
|
#include "gimp-utils.h"
|
||||||
#include "gimpbrush.h"
|
#include "gimpbrush.h"
|
||||||
#include "gimpbuffer.h"
|
#include "gimpbuffer.h"
|
||||||
#include "gimpcontainer.h"
|
#include "gimpcontainer.h"
|
||||||
|
@ -1090,32 +1089,15 @@ gimp_context_get_memsize (GimpObject *object,
|
||||||
GimpContext *context = GIMP_CONTEXT (object);
|
GimpContext *context = GIMP_CONTEXT (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (context->tool_name)
|
memsize += gimp_string_get_memsize (context->tool_name);
|
||||||
memsize += strlen (context->tool_name) + 1;
|
memsize += gimp_string_get_memsize (context->paint_name);
|
||||||
|
memsize += gimp_string_get_memsize (context->brush_name);
|
||||||
if (context->paint_name)
|
memsize += gimp_string_get_memsize (context->pattern_name);
|
||||||
memsize += strlen (context->paint_name) + 1;
|
memsize += gimp_string_get_memsize (context->palette_name);
|
||||||
|
memsize += gimp_string_get_memsize (context->font_name);
|
||||||
if (context->brush_name)
|
memsize += gimp_string_get_memsize (context->buffer_name);
|
||||||
memsize += strlen (context->brush_name) + 1;
|
memsize += gimp_string_get_memsize (context->imagefile_name);
|
||||||
|
memsize += gimp_string_get_memsize (context->template_name);
|
||||||
if (context->pattern_name)
|
|
||||||
memsize += strlen (context->pattern_name) + 1;
|
|
||||||
|
|
||||||
if (context->palette_name)
|
|
||||||
memsize += strlen (context->palette_name) + 1;
|
|
||||||
|
|
||||||
if (context->font_name)
|
|
||||||
memsize += strlen (context->font_name) + 1;
|
|
||||||
|
|
||||||
if (context->buffer_name)
|
|
||||||
memsize += strlen (context->buffer_name) + 1;
|
|
||||||
|
|
||||||
if (context->imagefile_name)
|
|
||||||
memsize += strlen (context->imagefile_name) + 1;
|
|
||||||
|
|
||||||
if (context->template_name)
|
|
||||||
memsize += strlen (context->template_name) + 1;
|
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -39,6 +39,7 @@
|
||||||
|
|
||||||
#include "core-types.h"
|
#include "core-types.h"
|
||||||
|
|
||||||
|
#include "gimp-utils.h"
|
||||||
#include "gimpdata.h"
|
#include "gimpdata.h"
|
||||||
#include "gimpmarshal.h"
|
#include "gimpmarshal.h"
|
||||||
|
|
||||||
|
@ -297,8 +298,7 @@ gimp_data_get_memsize (GimpObject *object,
|
||||||
GimpData *data = GIMP_DATA (object);
|
GimpData *data = GIMP_DATA (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (data->filename)
|
memsize += gimp_string_get_memsize (data->filename);
|
||||||
memsize += strlen (data->filename) + 1;
|
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -262,10 +262,8 @@ gimp_drawable_get_memsize (GimpObject *object,
|
||||||
GimpDrawable *drawable = GIMP_DRAWABLE (object);
|
GimpDrawable *drawable = GIMP_DRAWABLE (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (drawable->tiles)
|
|
||||||
memsize += tile_manager_get_memsize (drawable->tiles, FALSE);
|
memsize += tile_manager_get_memsize (drawable->tiles, FALSE);
|
||||||
|
|
||||||
if (drawable->preview_cache)
|
|
||||||
*gui_size += gimp_preview_cache_get_memsize (drawable->preview_cache);
|
*gui_size += gimp_preview_cache_get_memsize (drawable->preview_cache);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -100,7 +100,6 @@ gimp_drawable_mod_undo_get_memsize (GimpObject *object,
|
||||||
GimpDrawableModUndo *drawable_mod_undo = GIMP_DRAWABLE_MOD_UNDO (object);
|
GimpDrawableModUndo *drawable_mod_undo = GIMP_DRAWABLE_MOD_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (drawable_mod_undo->tiles)
|
|
||||||
memsize += tile_manager_get_memsize (drawable_mod_undo->tiles, FALSE);
|
memsize += tile_manager_get_memsize (drawable_mod_undo->tiles, FALSE);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -222,7 +222,6 @@ gimp_drawable_undo_get_memsize (GimpObject *object,
|
||||||
GimpDrawableUndo *drawable_undo = GIMP_DRAWABLE_UNDO (object);
|
GimpDrawableUndo *drawable_undo = GIMP_DRAWABLE_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (drawable_undo->tiles)
|
|
||||||
memsize += tile_manager_get_memsize (drawable_undo->tiles,
|
memsize += tile_manager_get_memsize (drawable_undo->tiles,
|
||||||
drawable_undo->sparse);
|
drawable_undo->sparse);
|
||||||
|
|
||||||
|
|
|
@ -986,16 +986,13 @@ gimp_image_get_memsize (GimpObject *object,
|
||||||
if (image->cmap)
|
if (image->cmap)
|
||||||
memsize += GIMP_IMAGE_COLORMAP_SIZE;
|
memsize += GIMP_IMAGE_COLORMAP_SIZE;
|
||||||
|
|
||||||
if (image->shadow)
|
|
||||||
memsize += tile_manager_get_memsize (image->shadow, FALSE);
|
memsize += tile_manager_get_memsize (image->shadow, FALSE);
|
||||||
|
|
||||||
if (image->projection)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->projection),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->projection),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
memsize += gimp_g_list_get_memsize (image->guides, sizeof (GimpGuide));
|
memsize += gimp_g_list_get_memsize (image->guides, sizeof (GimpGuide));
|
||||||
|
|
||||||
if (image->grid)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->grid), gui_size);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->grid), gui_size);
|
||||||
|
|
||||||
memsize += gimp_g_list_get_memsize (image->sample_points,
|
memsize += gimp_g_list_get_memsize (image->sample_points,
|
||||||
|
@ -1010,7 +1007,6 @@ gimp_image_get_memsize (GimpObject *object,
|
||||||
|
|
||||||
memsize += gimp_g_slist_get_memsize (image->layer_stack, 0);
|
memsize += gimp_g_slist_get_memsize (image->layer_stack, 0);
|
||||||
|
|
||||||
if (image->selection_mask)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->selection_mask),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->selection_mask),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
|
@ -1022,7 +1018,6 @@ gimp_image_get_memsize (GimpObject *object,
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->redo_stack),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (image->redo_stack),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
if (image->preview)
|
|
||||||
*gui_size += temp_buf_get_memsize (image->preview);
|
*gui_size += temp_buf_get_memsize (image->preview);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
|
|
||||||
#include "core-types.h"
|
#include "core-types.h"
|
||||||
|
|
||||||
|
#include "gimp-utils.h"
|
||||||
#include "gimpdrawable.h"
|
#include "gimpdrawable.h"
|
||||||
#include "gimpgrid.h"
|
#include "gimpgrid.h"
|
||||||
#include "gimpimage.h"
|
#include "gimpimage.h"
|
||||||
|
@ -146,7 +147,7 @@ gimp_image_undo_constructor (GType type,
|
||||||
case GIMP_UNDO_IMAGE_COLORMAP:
|
case GIMP_UNDO_IMAGE_COLORMAP:
|
||||||
image_undo->num_colors = gimp_image_get_colormap_size (image);
|
image_undo->num_colors = gimp_image_get_colormap_size (image);
|
||||||
image_undo->colormap = g_memdup (gimp_image_get_colormap (image),
|
image_undo->colormap = g_memdup (gimp_image_get_colormap (image),
|
||||||
image_undo->num_colors * 3);
|
GIMP_IMAGE_COLORMAP_SIZE);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GIMP_UNDO_PARASITE_ATTACH:
|
case GIMP_UNDO_PARASITE_ATTACH:
|
||||||
|
@ -223,19 +224,12 @@ gimp_image_undo_get_memsize (GimpObject *object,
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (image_undo->colormap)
|
if (image_undo->colormap)
|
||||||
memsize += image_undo->num_colors * 3;
|
memsize += GIMP_IMAGE_COLORMAP_SIZE;
|
||||||
|
|
||||||
if (image_undo->grid)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (image_undo->grid),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (image_undo->grid),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
memsize += gimp_string_get_memsize (image_undo->parasite_name);
|
||||||
if (image_undo->parasite_name)
|
memsize += gimp_parasite_get_memsize (image_undo->parasite, gui_size);
|
||||||
memsize += strlen (image_undo->parasite_name) + 1;
|
|
||||||
|
|
||||||
if (image_undo->parasite)
|
|
||||||
memsize += (sizeof (GimpParasite) +
|
|
||||||
strlen (image_undo->parasite->name) + 1 +
|
|
||||||
image_undo->parasite->size);
|
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
@ -344,7 +338,7 @@ gimp_image_undo_pop (GimpUndo *undo,
|
||||||
|
|
||||||
num_colors = gimp_image_get_colormap_size (image);
|
num_colors = gimp_image_get_colormap_size (image);
|
||||||
colormap = g_memdup (gimp_image_get_colormap (image),
|
colormap = g_memdup (gimp_image_get_colormap (image),
|
||||||
num_colors * 3);
|
GIMP_IMAGE_COLORMAP_SIZE);
|
||||||
|
|
||||||
gimp_image_set_colormap (image,
|
gimp_image_set_colormap (image,
|
||||||
image_undo->colormap, image_undo->num_colors,
|
image_undo->colormap, image_undo->num_colors,
|
||||||
|
|
|
@ -18,14 +18,13 @@
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include <glib-object.h>
|
#include <glib-object.h>
|
||||||
|
|
||||||
#include "libgimpbase/gimpbase.h"
|
#include "libgimpbase/gimpbase.h"
|
||||||
|
|
||||||
#include "core-types.h"
|
#include "core-types.h"
|
||||||
|
|
||||||
|
#include "gimp-utils.h"
|
||||||
#include "gimpitem.h"
|
#include "gimpitem.h"
|
||||||
#include "gimpitempropundo.h"
|
#include "gimpitempropundo.h"
|
||||||
#include "gimpparasitelist.h"
|
#include "gimpparasitelist.h"
|
||||||
|
@ -191,16 +190,9 @@ gimp_item_prop_undo_get_memsize (GimpObject *object,
|
||||||
GimpItemPropUndo *item_prop_undo = GIMP_ITEM_PROP_UNDO (object);
|
GimpItemPropUndo *item_prop_undo = GIMP_ITEM_PROP_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (item_prop_undo->name)
|
memsize += gimp_string_get_memsize (item_prop_undo->name);
|
||||||
memsize += strlen (item_prop_undo->name) + 1;
|
memsize += gimp_string_get_memsize (item_prop_undo->parasite_name);
|
||||||
|
memsize += gimp_parasite_get_memsize (item_prop_undo->parasite, NULL);
|
||||||
if (item_prop_undo->parasite_name)
|
|
||||||
memsize += strlen (item_prop_undo->parasite_name) + 1;
|
|
||||||
|
|
||||||
if (item_prop_undo->parasite)
|
|
||||||
memsize += (sizeof (GimpParasite) +
|
|
||||||
strlen (item_prop_undo->parasite->name) + 1 +
|
|
||||||
item_prop_undo->parasite->size);
|
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -411,12 +411,9 @@ gimp_layer_get_memsize (GimpObject *object,
|
||||||
GimpLayer *layer = GIMP_LAYER (object);
|
GimpLayer *layer = GIMP_LAYER (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (layer->mask)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (layer->mask), gui_size);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (layer->mask), gui_size);
|
||||||
|
|
||||||
if (layer->fs.backing_store)
|
|
||||||
*gui_size += tile_manager_get_memsize (layer->fs.backing_store, FALSE);
|
*gui_size += tile_manager_get_memsize (layer->fs.backing_store, FALSE);
|
||||||
|
|
||||||
*gui_size += layer->fs.num_segs * sizeof (BoundSeg);
|
*gui_size += layer->fs.num_segs * sizeof (BoundSeg);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -116,7 +116,6 @@ gimp_mask_undo_get_memsize (GimpObject *object,
|
||||||
GimpMaskUndo *mask_undo = GIMP_MASK_UNDO (object);
|
GimpMaskUndo *mask_undo = GIMP_MASK_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (mask_undo->tiles)
|
|
||||||
memsize += tile_manager_get_memsize (mask_undo->tiles, FALSE);
|
memsize += tile_manager_get_memsize (mask_undo->tiles, FALSE);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -388,7 +388,15 @@ gimp_object_get_memsize (GimpObject *object,
|
||||||
gint64 my_size = 0;
|
gint64 my_size = 0;
|
||||||
gint64 my_gui_size = 0;
|
gint64 my_gui_size = 0;
|
||||||
|
|
||||||
g_return_val_if_fail (GIMP_IS_OBJECT (object), 0);
|
g_return_val_if_fail (object == NULL || GIMP_IS_OBJECT (object), 0);
|
||||||
|
|
||||||
|
if (! object)
|
||||||
|
{
|
||||||
|
if (gui_size)
|
||||||
|
*gui_size = 0;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef DEBUG_MEMSIZE
|
#ifdef DEBUG_MEMSIZE
|
||||||
if (gimp_debug_memsize)
|
if (gimp_debug_memsize)
|
||||||
|
@ -461,8 +469,8 @@ gimp_object_real_get_memsize (GimpObject *object,
|
||||||
{
|
{
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (object->name && ! object->static_name)
|
if (! object->static_name)
|
||||||
memsize += strlen (object->name) + 1;
|
memsize += gimp_string_get_memsize (object->name);
|
||||||
|
|
||||||
return memsize + gimp_g_object_get_memsize ((GObject *) object);
|
return memsize + gimp_g_object_get_memsize ((GObject *) object);
|
||||||
}
|
}
|
||||||
|
|
|
@ -503,8 +503,7 @@ gimp_palette_entry_get_memsize (GimpPaletteEntry *entry,
|
||||||
{
|
{
|
||||||
gint64 memsize = sizeof (GimpPaletteEntry);
|
gint64 memsize = sizeof (GimpPaletteEntry);
|
||||||
|
|
||||||
if (entry->name)
|
memsize += gimp_string_get_memsize (entry->name);
|
||||||
memsize += strlen (entry->name) + 1;
|
|
||||||
|
|
||||||
return memsize;
|
return memsize;
|
||||||
}
|
}
|
||||||
|
|
|
@ -156,7 +156,6 @@ gimp_parasite_list_get_memsize (GimpObject *object,
|
||||||
GimpParasiteList *list = GIMP_PARASITE_LIST (object);
|
GimpParasiteList *list = GIMP_PARASITE_LIST (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (list->table)
|
|
||||||
memsize += gimp_g_hash_table_get_memsize_foreach (list->table,
|
memsize += gimp_g_hash_table_get_memsize_foreach (list->table,
|
||||||
(GimpMemsizeFunc)
|
(GimpMemsizeFunc)
|
||||||
gimp_parasite_get_memsize,
|
gimp_parasite_get_memsize,
|
||||||
|
|
|
@ -105,7 +105,6 @@ gimp_pattern_get_memsize (GimpObject *object,
|
||||||
GimpPattern *pattern = GIMP_PATTERN (object);
|
GimpPattern *pattern = GIMP_PATTERN (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (pattern->mask)
|
|
||||||
memsize += temp_buf_get_memsize (pattern->mask);
|
memsize += temp_buf_get_memsize (pattern->mask);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -283,7 +283,8 @@ gimp_preview_cache_get_memsize (GSList *cache)
|
||||||
GSList *list;
|
GSList *list;
|
||||||
gsize memsize = 0;
|
gsize memsize = 0;
|
||||||
|
|
||||||
g_return_val_if_fail (cache != NULL, 0);
|
if (! cache)
|
||||||
|
return 0;
|
||||||
|
|
||||||
for (list = cache; list; list = list->next)
|
for (list = cache; list; list = list->next)
|
||||||
memsize += sizeof (GSList) + temp_buf_get_memsize ((TempBuf *) list->data);
|
memsize += sizeof (GSList) + temp_buf_get_memsize ((TempBuf *) list->data);
|
||||||
|
|
|
@ -280,7 +280,6 @@ gimp_undo_get_memsize (GimpObject *object,
|
||||||
GimpUndo *undo = GIMP_UNDO (object);
|
GimpUndo *undo = GIMP_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (undo->preview)
|
|
||||||
*gui_size += temp_buf_get_memsize (undo->preview);
|
*gui_size += temp_buf_get_memsize (undo->preview);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -87,7 +87,6 @@ gimp_undo_stack_get_memsize (GimpObject *object,
|
||||||
GimpUndoStack *stack = GIMP_UNDO_STACK (object);
|
GimpUndoStack *stack = GIMP_UNDO_STACK (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (stack->undos)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (stack->undos), gui_size);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (stack->undos), gui_size);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -249,7 +249,6 @@ gimp_viewable_get_memsize (GimpObject *object,
|
||||||
temp_buf = g_object_get_qdata (G_OBJECT (object), quark_preview_temp_buf);
|
temp_buf = g_object_get_qdata (G_OBJECT (object), quark_preview_temp_buf);
|
||||||
pixbuf = g_object_get_qdata (G_OBJECT (object), quark_preview_pixbuf);
|
pixbuf = g_object_get_qdata (G_OBJECT (object), quark_preview_pixbuf);
|
||||||
|
|
||||||
if (temp_buf)
|
|
||||||
*gui_size += temp_buf_get_memsize (temp_buf);
|
*gui_size += temp_buf_get_memsize (temp_buf);
|
||||||
|
|
||||||
if (pixbuf)
|
if (pixbuf)
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <string.h>
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
#include <glib-object.h>
|
#include <glib-object.h>
|
||||||
|
@ -135,26 +134,13 @@ gimp_procedure_get_memsize (GimpObject *object,
|
||||||
|
|
||||||
if (! procedure->static_strings)
|
if (! procedure->static_strings)
|
||||||
{
|
{
|
||||||
if (procedure->original_name)
|
memsize += gimp_string_get_memsize (procedure->original_name);
|
||||||
memsize += strlen (procedure->original_name) + 1;
|
memsize += gimp_string_get_memsize (procedure->blurb);
|
||||||
|
memsize += gimp_string_get_memsize (procedure->help);
|
||||||
if (procedure->blurb)
|
memsize += gimp_string_get_memsize (procedure->author);
|
||||||
memsize += strlen (procedure->blurb) + 1;
|
memsize += gimp_string_get_memsize (procedure->copyright);
|
||||||
|
memsize += gimp_string_get_memsize (procedure->date);
|
||||||
if (procedure->help)
|
memsize += gimp_string_get_memsize (procedure->deprecated);
|
||||||
memsize += strlen (procedure->help) + 1;
|
|
||||||
|
|
||||||
if (procedure->author)
|
|
||||||
memsize += strlen (procedure->author) + 1;
|
|
||||||
|
|
||||||
if (procedure->copyright)
|
|
||||||
memsize += strlen (procedure->copyright) + 1;
|
|
||||||
|
|
||||||
if (procedure->date)
|
|
||||||
memsize += strlen (procedure->date) + 1;
|
|
||||||
|
|
||||||
if (procedure->deprecated)
|
|
||||||
memsize += strlen (procedure->deprecated) + 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
memsize += procedure->num_args * sizeof (GParamSpec *);
|
memsize += procedure->num_args * sizeof (GParamSpec *);
|
||||||
|
|
|
@ -20,8 +20,6 @@
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include <glib-object.h>
|
#include <glib-object.h>
|
||||||
|
|
||||||
#include "plug-in-types.h"
|
#include "plug-in-types.h"
|
||||||
|
@ -83,20 +81,11 @@ gimp_plug_in_def_get_memsize (GimpObject *object,
|
||||||
GimpPlugInDef *plug_in_def = GIMP_PLUG_IN_DEF (object);
|
GimpPlugInDef *plug_in_def = GIMP_PLUG_IN_DEF (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (plug_in_def->prog)
|
memsize += gimp_string_get_memsize (plug_in_def->prog);
|
||||||
memsize += strlen (plug_in_def->prog) + 1;
|
memsize += gimp_string_get_memsize (plug_in_def->locale_domain_name);
|
||||||
|
memsize += gimp_string_get_memsize (plug_in_def->locale_domain_path);
|
||||||
if (plug_in_def->locale_domain_name)
|
memsize += gimp_string_get_memsize (plug_in_def->help_domain_name);
|
||||||
memsize += strlen (plug_in_def->locale_domain_name) + 1;
|
memsize += gimp_string_get_memsize (plug_in_def->help_domain_uri);
|
||||||
|
|
||||||
if (plug_in_def->locale_domain_path)
|
|
||||||
memsize += strlen (plug_in_def->locale_domain_path) + 1;
|
|
||||||
|
|
||||||
if (plug_in_def->help_domain_name)
|
|
||||||
memsize += strlen (plug_in_def->help_domain_name) + 1;
|
|
||||||
|
|
||||||
if (plug_in_def->help_domain_uri)
|
|
||||||
memsize += strlen (plug_in_def->help_domain_uri) + 1;
|
|
||||||
|
|
||||||
memsize += gimp_g_slist_get_memsize (plug_in_def->procedures, 0);
|
memsize += gimp_g_slist_get_memsize (plug_in_def->procedures, 0);
|
||||||
|
|
||||||
|
|
|
@ -257,7 +257,7 @@ gimp_plug_in_manager_get_memsize (GimpObject *object,
|
||||||
(GimpMemsizeFunc)
|
(GimpMemsizeFunc)
|
||||||
gimp_object_get_memsize,
|
gimp_object_get_memsize,
|
||||||
gui_size);
|
gui_size);
|
||||||
memsize += gimp_g_slist_get_memsize (manager->plug_in_stack, 0 /* FIXME */);
|
memsize += gimp_g_slist_get_memsize (manager->plug_in_stack, 0);
|
||||||
memsize += gimp_g_slist_get_memsize (manager->history, 0);
|
memsize += gimp_g_slist_get_memsize (manager->history, 0);
|
||||||
|
|
||||||
memsize += 0; /* FIXME manager->shm */
|
memsize += 0; /* FIXME manager->shm */
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
#include "plug-in-types.h"
|
#include "plug-in-types.h"
|
||||||
|
|
||||||
#include "core/gimp.h"
|
#include "core/gimp.h"
|
||||||
|
#include "core/gimp-utils.h"
|
||||||
#include "core/gimpmarshal.h"
|
#include "core/gimpmarshal.h"
|
||||||
#include "core/gimpparamspecs.h"
|
#include "core/gimpparamspecs.h"
|
||||||
|
|
||||||
|
@ -157,21 +158,17 @@ gimp_plug_in_procedure_get_memsize (GimpObject *object,
|
||||||
GList *list;
|
GList *list;
|
||||||
GSList *slist;
|
GSList *slist;
|
||||||
|
|
||||||
if (proc->prog)
|
memsize += gimp_string_get_memsize (proc->prog);
|
||||||
memsize += strlen (proc->prog) + 1;
|
memsize += gimp_string_get_memsize (proc->menu_label);
|
||||||
|
|
||||||
if (proc->menu_label)
|
|
||||||
memsize += strlen (proc->menu_label) + 1;
|
|
||||||
|
|
||||||
for (list = proc->menu_paths; list; list = g_list_next (list))
|
for (list = proc->menu_paths; list; list = g_list_next (list))
|
||||||
memsize += sizeof (GList) + strlen (list->data) + 1;
|
memsize += sizeof (GList) + gimp_string_get_memsize (list->data);
|
||||||
|
|
||||||
switch (proc->icon_type)
|
switch (proc->icon_type)
|
||||||
{
|
{
|
||||||
case GIMP_ICON_TYPE_STOCK_ID:
|
case GIMP_ICON_TYPE_STOCK_ID:
|
||||||
case GIMP_ICON_TYPE_IMAGE_FILE:
|
case GIMP_ICON_TYPE_IMAGE_FILE:
|
||||||
if (proc->icon_data)
|
memsize += gimp_string_get_memsize ((gchar *) proc->icon_data);
|
||||||
memsize += strlen ((gchar *) proc->icon_data) + 1;
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GIMP_ICON_TYPE_INLINE_PIXBUF:
|
case GIMP_ICON_TYPE_INLINE_PIXBUF:
|
||||||
|
@ -179,29 +176,20 @@ gimp_plug_in_procedure_get_memsize (GimpObject *object,
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (proc->extensions)
|
memsize += gimp_string_get_memsize (proc->extensions);
|
||||||
memsize += strlen (proc->extensions) + 1;
|
memsize += gimp_string_get_memsize (proc->prefixes);
|
||||||
|
memsize += gimp_string_get_memsize (proc->magics);
|
||||||
if (proc->prefixes)
|
memsize += gimp_string_get_memsize (proc->mime_type);
|
||||||
memsize += strlen (proc->prefixes) + 1;
|
memsize += gimp_string_get_memsize (proc->thumb_loader);
|
||||||
|
|
||||||
if (proc->magics)
|
|
||||||
memsize += strlen (proc->magics) + 1;
|
|
||||||
|
|
||||||
if (proc->mime_type)
|
|
||||||
memsize += strlen (proc->mime_type) + 1;
|
|
||||||
|
|
||||||
if (proc->thumb_loader)
|
|
||||||
memsize += strlen (proc->thumb_loader) + 1;
|
|
||||||
|
|
||||||
for (slist = proc->extensions_list; slist; slist = g_slist_next (slist))
|
for (slist = proc->extensions_list; slist; slist = g_slist_next (slist))
|
||||||
memsize += sizeof (GSList) + strlen (slist->data) + 1;
|
memsize += sizeof (GSList) + gimp_string_get_memsize (slist->data);
|
||||||
|
|
||||||
for (slist = proc->prefixes_list; slist; slist = g_slist_next (slist))
|
for (slist = proc->prefixes_list; slist; slist = g_slist_next (slist))
|
||||||
memsize += sizeof (GSList) + strlen (slist->data) + 1;
|
memsize += sizeof (GSList) + gimp_string_get_memsize (slist->data);
|
||||||
|
|
||||||
for (slist = proc->magics_list; slist; slist = g_slist_next (slist))
|
for (slist = proc->magics_list; slist; slist = g_slist_next (slist))
|
||||||
memsize += sizeof (GSList) + strlen (slist->data) + 1;
|
memsize += sizeof (GSList) + gimp_string_get_memsize (slist->data);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -464,14 +464,9 @@ gimp_text_get_memsize (GimpObject *object,
|
||||||
GimpText *text = GIMP_TEXT (object);
|
GimpText *text = GIMP_TEXT (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (text->text)
|
memsize += gimp_string_get_memsize (text->text);
|
||||||
memsize += strlen (text->text) + 1;
|
memsize += gimp_string_get_memsize (text->font);
|
||||||
|
memsize += gimp_string_get_memsize (text->language);
|
||||||
if (text->font)
|
|
||||||
memsize += strlen (text->font) + 1;
|
|
||||||
|
|
||||||
if (text->language)
|
|
||||||
memsize += strlen (text->language) + 1;
|
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
|
@ -226,12 +226,9 @@ static gint64
|
||||||
gimp_text_layer_get_memsize (GimpObject *object,
|
gimp_text_layer_get_memsize (GimpObject *object,
|
||||||
gint64 *gui_size)
|
gint64 *gui_size)
|
||||||
{
|
{
|
||||||
GimpTextLayer *text_layer;
|
GimpTextLayer *text_layer = GIMP_TEXT_LAYER (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
text_layer = GIMP_TEXT_LAYER (object);
|
|
||||||
|
|
||||||
if (text_layer->text)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (text_layer->text),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (text_layer->text),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
|
|
|
@ -189,10 +189,7 @@ gimp_text_undo_get_memsize (GimpObject *object,
|
||||||
GimpTextUndo *undo = GIMP_TEXT_UNDO (object);
|
GimpTextUndo *undo = GIMP_TEXT_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (undo->value)
|
|
||||||
memsize += gimp_g_value_get_memsize (undo->value);
|
memsize += gimp_g_value_get_memsize (undo->value);
|
||||||
|
|
||||||
if (undo->text)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (undo->text), NULL);
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (undo->text), NULL);
|
||||||
|
|
||||||
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object,
|
||||||
|
|
|
@ -97,7 +97,6 @@ gimp_vectors_mod_undo_get_memsize (GimpObject *object,
|
||||||
GimpVectorsModUndo *vectors_mod_undo = GIMP_VECTORS_MOD_UNDO (object);
|
GimpVectorsModUndo *vectors_mod_undo = GIMP_VECTORS_MOD_UNDO (object);
|
||||||
gint64 memsize = 0;
|
gint64 memsize = 0;
|
||||||
|
|
||||||
if (vectors_mod_undo->vectors)
|
|
||||||
memsize += gimp_object_get_memsize (GIMP_OBJECT (vectors_mod_undo->vectors),
|
memsize += gimp_object_get_memsize (GIMP_OBJECT (vectors_mod_undo->vectors),
|
||||||
gui_size);
|
gui_size);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue