crash in hmm dunno
by David Christian Berg
I have the latest debian package, but dunno what that is... can't you
put something in the about dialog, so that I know... I never remember
this terminal stuff.
Anyways, I get a crash when I try to copy a text with a gradient fill.
That is strange on the one hand and annoying on the other. I hope it's
an easy to fix or fixed already.
David
19 years, 1 month
math operation in dialogs
by David Christian Berg
just wondering if I should file a bug, or if it's so simple that I don't
need to.
Especially in the guides and the positioning dialog it would be helpful
to be able to put mathimatical stuff in there. Imagine you have a guide
at 45.6 and want one 7 mm further to the right, you'd just type 45.6+7
and there you go... even more important is something like dividing by 2
or 3, I need that quite often.
Btw: Since my laptop was for repair, I used CorelDraw, and I think for
basic vector editing and layouting inkscape is by now better than Corel.
That is something!
Which also brings me to one other thing I'm missing: Baseline Grid. Even
for simple flyers and brochures it's nice (or rather necessary) to have.
CorelDraw just pissed me of for not having it!
I got my laptop back, with working ethernet card, Yeah!! Take care!
David
19 years, 1 month
doxygen & manpage
by Kees Cook
tvon: can you correct the groups for the inkscape_web/doc/doxygen
directories/files to be "inkscape", please?
gouldtj: can you update your update.dox.sh to get the latest copy from
inkscape_project? I added automatic manpage generation to it.
--
Kees Cook @outflux.net
19 years, 12 months
button size
by MenTaLguY
I made the tool selection buttons along the side larger than the buttons
for various commands up top.
While I'd experimented with this a while back and abandoned it, it's
since been suggested a number of times (most recently by Jon), and Xara
appears to do so as well, I decided to try it again.
See what y'all think...
-mental
19 years, 12 months
Re: [Inkscape-devel] button size
by Robert Crosbie
IMHO, I think the top bar could use the larger buttons too.
Rob.
http://members.rogers.com/rcrosbie
>From: MenTaLguY <mental@...3...>
>To: Inkscape ML <inkscape-devel(a)lists.sourceforge.net>
>Subject: [Inkscape-devel] button size
>Date: Sun, 30 Nov 2003 18:12:50 -0500
>
>I made the tool selection buttons along the side larger than the buttons
>for various commands up top.
>
>While I'd experimented with this a while back and abandoned it, it's
>since been suggested a number of times (most recently by Jon), and Xara
>appears to do so as well, I decided to try it again.
>
>See what y'all think...
>
>-mental
><< signature.asc >>
_________________________________________________________________
Help STOP SPAM with the new MSN 8 and get 2 months FREE*
http://join.msn.com/?page=dept/bcomm&pgmarket=en-ca&RU=http%3a%2f%2fjoin....
19 years, 12 months
[Fwd: Re: [Sodipodi-list] Win32 0.33 prerelease beta2]
by MenTaLguY
For those of you working on the Inkscape Win32 stuff...
(you might want to hit the sodipodi list archives and follow the whole
thread though)
-----Forwarded Message-----
From: Mitsuru Oka <oka326@...90...>
To: Lauris Kaplinski <lauris@...39...>
Cc: sodipodi-list(a)lists.sourceforge.net
Subject: Re: [Sodipodi-list] Win32 0.33 prerelease beta2
Date: Mon, 01 Dec 2003 04:20:09 +0900
Lauris Kaplinski <1070186315.8512.36.camel@...91...> wrote:
>Hello!
>
>I wonder, if gtk+ is built with multibyte charset, and sodipodi
>uses Unicode, is the result functional at all?
>We can switch back to multibyte, if it is needed, although this makes
>things much uglier and error-prone.
Yeah, It's reasonable.
I found that dirty hack also works on win98:
Index: nr-type-w32.c
===================================================================
RCS file: /cvs/gnome/sodipodi/src/libnrtype/nr-type-w32.c,v
retrieving revision 1.18
diff -u -r1.18 nr-type-w32.c
--- nr-type-w32.c 29 Nov 2003 23:50:52 -0000 1.18
+++ nr-type-w32.c 30 Nov 2003 19:15:43 -0000
@@ -15,6 +15,8 @@
#include <stdio.h>
#include <tchar.h>
+#include <glib.h>
+
#include <libarikkei/arikkei-dict.h>
#include <libarikkei/arikkei-strlib.h>
@@ -565,11 +567,16 @@
nr_type_w32_typefaces_enum_proc (LOGFONT *lfp, TEXTMETRIC *metrics, DWORD fontType, LPARAM lParam)
{
if (fontType == TRUETYPE_FONTTYPE) {
- LOGFONT lf;
+ GSList *list;
+ LOGFONT *lf;
+
+ lf = nr_new (LOGFONT, 1);
+ *lf = *lfp;
- lf = *lfp;
+ list = g_slist_append (*(GSList **)lParam, lf);
+ *(GSList **)lParam = list;
- EnumFontFamiliesEx (hdc, &lf, (FONTENUMPROC) nr_type_w32_inner_enum_proc, lParam, 0);
+/* EnumFontFamiliesEx (hdc, &lf, (FONTENUMPROC) nr_type_w32_inner_enum_proc, lParam, 0); */
}
return 1;
@@ -578,12 +585,14 @@
static void
nr_type_w32_init (void)
{
+ GSList *font_que = NULL;
LOGFONT logfont;
int pos, i;
/* g_print ("Loading W32 type directory...\n"); */
- hdc = CreateDC (L"DISPLAY", NULL, NULL, NULL);
+ /* hdc = CreateDC (L"DISPLAY", NULL, NULL, NULL); */
+ hdc = CreateDCA ("DISPLAY", NULL, NULL, NULL);
arikkei_dict_setup_string (&familydict, 131);
arikkei_dict_setup_string (&namedict, 537);
@@ -591,7 +600,14 @@
/* read system font directory */
memset (&logfont, 0, sizeof (LOGFONT));
logfont.lfCharSet = DEFAULT_CHARSET;
- EnumFontFamiliesEx (hdc, &logfont, (FONTENUMPROC) nr_type_w32_typefaces_enum_proc, 0, 0);
+ EnumFontFamiliesEx (hdc, &logfont, (FONTENUMPROC) nr_type_w32_typefaces_enum_proc, (LPARAM)&font_que, 0);
+
+ while (font_que) {
+ LOGFONT *lf;
+ lf = (LOGFONT*)font_que->data;
+ EnumFontFamiliesEx (hdc, lf, (FONTENUMPROC) nr_type_w32_inner_enum_proc, 0, 0);
+ font_que = g_slist_remove (font_que, (gpointer)lf);
+ }
/* Fill in lists */
NRW32Families.length = families_len;
Best regards,
19 years, 12 months
Re: [Inkscape-devel] paste style
by bulia byak
> It seems like when copying to the clipboard, there needs to be a
> mechanism to scan the selected objects for any referenced objects
> and also copy the defs for those. The recipient of the paste
> would then need to add those refs to its own set of defs. It's
> possible that the receiving document could a) have a different def
> by the same name, or b) have the same def by a different name; in
> case (a) it would seem prudent to rename the incoming style, and
> in case (b) perhaps it should normally merge by default but allow
> the user an option to not merge when pasting.
That sounds like a lot of code. Maybe we can simplify it a bit as
follows:
- a new clipboard is made for storing defs
- whenever anything is cut or copied, the entire defs from the
current document are placed on that defs clipboard
- whenever clipboard objects (or style) are pasted, the contents of
the defs clipboard are merged with the current document defs:
-- same name, same content: disregard
-- same name, different content: rename both defs and the pasted
objects' references (this is the most tricky part)
-- different name, same content: just add, no merge
An advantage of this approach is that you don't need to scan your
objects and select relevant defs when copying. However, you'll still
have to scan and re-id what you are pasting in case of name
conflicts (although these are likely to be rare).
--
___________________________________________________________
Sign-up for Ads Free at Mail.com
http://promo.mail.com/adsfreejump.htm
19 years, 12 months
paste style
by bulia byak
2003-11-29 bulia byak <bulia@...23...>
* src/selection-ch emistry.c src/selection-chemistry.h src/verbs.c src/verbs.h
src/shortcuts.c src/interface.c: new function, verb, shortcut (shift-ctrl-v), menu
command: paste style (apply the style of copied object to selection). If more than
one object is copied, the first one in the clipboard list is taken as the source of
the style.
One problem with both paste and the new paste style: gradients are not copied between documents. This is because the CSS refers to a gradient which is stored separately in <defs>, and it's not copied or pasted when you copy or paste an object using it. The same will apply to bitmap fills and masks when we implement them. Did anyone think about how to solve this in the most generic and elegant way?
--
___________________________________________________________
Sign-up for Ads Free at Mail.com
http://promo.mail.com/adsfreejump.htm
19 years, 12 months
g_free cleanup
by Peter Moulder
This is a low-priority cleanup that may be objectionable, so I'll post
here first.
According to the g_free documentation, g_free accepts a NULL argument
(as a no-op), yet much code explicitly checks for NULL before calling
g_free.
Disadvantage of the transformation:
- Involves a function call even in the NULL case (unless g_free is a
macro or inline function that tests for NULL before passing to the
"real" version). I've left a couple of places untransformed where
it looks like NULL has a significant probability. If NULL is unlikely,
then we're better off having more readable code [and saving a couple
of bytes of object code].
- May make diff3 against sodipodi code harder.
Strong candidates for applying the transformation are where the tested
pointer is something long like `style->text->font_family.value', and
src/module.c where it uses a IF_NOT_NULL_FREE macro.
Btw, some (but not all) of the searching for this pattern was using a
regexp to reduce the probability of accidentally transforming `if (foo)
g_free (bar)' for distinct `foo' and `bar'.
Any comments on where this transformation (removing the `if') should be
applied? In absence of comments, I'll probably commit the patch in its
current form (other than ChangeLog date).
pjrm.
Index: ChangeLog
===================================================================
RCS file: /cvsroot/inkscape/inkscape/ChangeLog,v
retrieving revision 1.56
diff -d -p -U5 -r1.56 ChangeLog
--- ChangeLog 29 Nov 2003 09:20:28 -0000 1.56
+++ ChangeLog 30 Nov 2003 03:34:38 -0000
@@ -7,10 +7,33 @@
Make utest.c,utest.h formatting conform more to doc/coding-style.txt.
Have utest.c built into libutest.a (see src/utest/Makefile.am
comments).
+ * src/document.c (sp_document_new), file.c (file_open_ok,
+ sp_file_open_dialog, sp_file_save_dialog, sp_file_do_import),
+ main.c (sp_main_console), src/module.c (sp_module_finalize,
+ sp_module_input_finalize, sp_module_input_build,
+ sp_module_output_finalize, sp_module_output_build),
+ src/sp-anchor.c (sp_anchor_set), src/sp-image.c (sp_image_set),
+ src/sp-text.c (sp_string_release, sp_string_read_content,
+ sp_string_set_shape), src/sp-use.c (sp_use_release), src/style.c
+ (sp_style_unref, sp_style_merge_property,
+ sp_style_merge_from_parent, sp_text_style_unref,
+ sp_style_read_istring), src/bonobo/embeddable-document.c
+ (sp_bonobo_stream_read, sp_embeddable_document_ps_save),
+ src/dialogs/stroke-style.c (sp_stroke_style_scale_line),
+ src/dialogs/text-edit.c (sp_text_edit_dialog_text_changed),
+ src/helper/sodipodi-ctrl.c (sp_ctrl_build_cache),
+ src/modules/ps.c (sp_ps_print_image),
+ src/widgets/font-selector.c (sp_font_preview_set_phrase),
+ src/widgets/gradient-image.c (sp_gradient_image_size_allocate),
+ src/xml/repr-action.c (coalesce_chgattr, coalesce_chgcontent,
+ free_action), src/xml/repr.c (repr_finalize, sp_repr_merge):
+ Minor cleanup: replace `if (POINTER_EXPR) g_free (POINTER_EXPR)'
+ with the simpler (more readable) `g_free (POINTER_EXPR)'.
+
* src/xml/repr-action.c (reverse_log): Add doc comment. Rename some vars.
* src/xml/repr-action.c (sp_repr_replay_log, sp_repr_undo_log),
src/xml/repr-action.h, src/document-undo.c (sp_document_cancel,
sp_document_redo, sp_document_undo): Remove the unused doc
Index: src/document.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/document.c,v
retrieving revision 1.9
diff -d -p -U5 -r1.9 document.c
--- src/document.c 29 Nov 2003 21:55:57 -0000 1.9
+++ src/document.c 30 Nov 2003 03:34:38 -0000
@@ -334,12 +334,12 @@ sp_document_new (const gchar *uri, unsig
name = g_strdup_printf (_("New document %d"), ++doc_count);
}
doc = sp_document_create (rdoc, uri, base, name, advertize, keepalive);
- if (base) g_free (base);
- if (name) g_free (name);
+ g_free (base);
+ g_free (name);
return doc;
}
SPDocument *
Index: src/file.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/file.c,v
retrieving revision 1.10
diff -d -p -U5 -r1.10 file.c
--- src/file.c 30 Nov 2003 03:29:01 -0000 1.10
+++ src/file.c 30 Nov 2003 03:34:38 -0000
@@ -99,11 +99,11 @@ file_open_ok (GtkWidget *widget, GtkFile
gchar *filename;
filename = g_strdup (gtk_file_selection_get_filename (fs));
if (filename && g_file_test (filename, G_FILE_TEST_IS_DIR)) {
- if (open_path) g_free (open_path);
+ g_free (open_path);
if (filename[strlen(filename) - 1] != G_DIR_SEPARATOR) {
open_path = g_strconcat (filename, G_DIR_SEPARATOR_S, NULL);
g_free (filename);
} else {
open_path = filename;
@@ -112,11 +112,11 @@ file_open_ok (GtkWidget *widget, GtkFile
return;
}
if (filename != NULL) {
gchar* key;
- if (open_path) g_free (open_path);
+ g_free (open_path);
open_path = g_dirname (filename);
if (open_path) open_path = g_strconcat (open_path, G_DIR_SEPARATOR_S, NULL);
key = (gchar*)g_object_get_data (G_OBJECT (fs), "type-key");
sp_file_open (filename, key);
g_free (filename);
@@ -142,11 +142,11 @@ sp_file_open_dialog (gpointer object, gp
{
#ifdef WIN32
char *filename;
filename = sp_win32_get_open_filename (open_path, "SVG files\0*.svg;*.svgz\0All files\0*\0", _("Select file to open"));
if (filename) {
- if (open_path) g_free (open_path);
+ g_free (open_path);
open_path = g_dirname (filename);
if (open_path) open_path = g_strconcat (open_path, G_DIR_SEPARATOR_S, NULL);
sp_file_open (filename, NULL);
g_free (filename);
}
@@ -199,11 +199,11 @@ sp_file_save_dialog (SPDocument *doc)
char *filename;
unsigned int spns;
filename = sp_win32_get_save_filename (save_path, &spns);
if (filename && *filename) {
sp_file_do_save (doc, filename, (spns) ? SP_MODULE_KEY_OUTPUT_SVG_INKSCAPE : SP_MODULE_KEY_OUTPUT_SVG);
- if (save_path) g_free (save_path);
+ g_free (save_path);
save_path = g_dirname (filename);
save_path = g_strdup (save_path);
g_free (filename);
}
#else
@@ -320,11 +320,11 @@ sp_file_do_import (SPDocument *doc, cons
const gchar *e, *docbase, *relname;
SPRepr * repr;
SPReprDoc * rnewdoc;
if (filename && g_file_test (filename, G_FILE_TEST_IS_DIR)) {
- if (import_path) g_free (import_path);
+ g_free (import_path);
if (filename[strlen(filename) - 1] != G_DIR_SEPARATOR) {
import_path = g_strconcat (filename, G_DIR_SEPARATOR_S, NULL);
} else {
import_path = g_strdup (filename);
}
Index: src/main.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/main.c,v
retrieving revision 1.9
diff -d -p -U5 -r1.9 main.c
--- src/main.c 27 Nov 2003 06:14:27 -0000 1.9
+++ src/main.c 30 Nov 2003 03:34:38 -0000
@@ -372,11 +372,11 @@ sp_main_console (int argc, const char **
}
}
fl = g_slist_remove (fl, fl->data);
}
- if (printer) g_free (printer);
+ g_free (printer);
inkscape_unref ();
return 0;
}
Index: src/module.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/module.c,v
retrieving revision 1.5
diff -d -p -U5 -r1.5 module.c
--- src/module.c 16 Nov 2003 07:09:42 -0000 1.5
+++ src/module.c 30 Nov 2003 03:34:38 -0000
@@ -27,20 +27,10 @@
#include "document.h"
#include "module.h"
#include "modules/db.h"
-/**
- \def IF_NOT_NULL_FREE
-
- This is a quick little macro to check if a value is null, and
- if it is not, then free the data. It's used in most of the
- finalize functions, and then also when updating values. It
- doesn't do that much, but it makes the code easier to read
-*/
-#define IF_NOT_NULL_FREE(x) if ((x) != NULL) g_free((x))
-
/* SPModule */
static void sp_module_class_init (SPModuleClass *klass);
static void sp_module_init (SPModule *module);
static void sp_module_finalize (GObject *object);
@@ -52,11 +42,11 @@ static SPModule * sp_module_new (GType t
/**
\var module_parent_class
This is the parent class for the modules. It should be
- GObject - but no promises */
+ GObject - but no promises */
static GObjectClass * module_parent_class;
/**
\return The type value for a SP Module
\brief A quick way to get the type value for a SPModule
@@ -157,12 +147,12 @@ sp_module_finalize (GObject *object)
sp_module_db_unregister (module);
if (module->repr) sp_repr_unref (module->repr);
- IF_NOT_NULL_FREE(module->name);
- IF_NOT_NULL_FREE(module->id);
+ g_free (module->name);
+ g_free (module->id);
G_OBJECT_CLASS (module_parent_class)->finalize (object);
return;
}
@@ -285,11 +275,11 @@ sp_module_unload_default (SPModule * mod
should be created.
\param repr The XML structure of the module definition.
This function is used to build an SPModule (really a subclass of that
though) from an XML description stored in a SPRepr tree. If the class
- has it's own build function, then that function is used. Otherwise
+ has its own build function, then that function is used. Otherwise
the generic 'sp_module_private_build' function is used.
A reference to the SPRepr structure is added in this function so it
should not need to be added by each individual subclass.
*/
@@ -424,14 +414,14 @@ sp_module_input_finalize (GObject *objec
{
SPModuleInput *imod;
imod = (SPModuleInput *) object;
- IF_NOT_NULL_FREE(imod->mimetype);
- IF_NOT_NULL_FREE(imod->extension);
- IF_NOT_NULL_FREE(imod->filetypename);
- IF_NOT_NULL_FREE(imod->filetypetooltip);
+ g_free (imod->mimetype);
+ g_free (imod->extension);
+ g_free (imod->filetypename);
+ g_free (imod->filetypetooltip);
G_OBJECT_CLASS (input_parent_class)->finalize (object);
return;
}
@@ -470,23 +460,23 @@ sp_module_input_build (SPModule *module,
while (child_repr != NULL) {
if (!strcmp(sp_repr_name(child_repr), "input")) {
child_repr = sp_repr_children(child_repr);
while (child_repr != NULL) {
if (!strcmp(sp_repr_name(child_repr), "extension")) {
- IF_NOT_NULL_FREE(imod->extension);
+ g_free (imod->extension);
imod->extension = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "mimetype")) {
- IF_NOT_NULL_FREE(imod->mimetype);
+ g_free (imod->mimetype);
imod->mimetype = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "filetypename")) {
- IF_NOT_NULL_FREE(imod->filetypename);
+ g_free (imod->filetypename);
imod->filetypename = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "filetypetooltip")) {
- IF_NOT_NULL_FREE(imod->filetypetooltip);
+ g_free (imod->filetypetooltip);
imod->filetypetooltip = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
child_repr = sp_repr_next(child_repr);
}
@@ -623,14 +613,14 @@ sp_module_output_finalize (GObject *obje
{
SPModuleOutput *omod;
omod = (SPModuleOutput *) object;
- IF_NOT_NULL_FREE(omod->mimetype);
- IF_NOT_NULL_FREE(omod->extension);
- IF_NOT_NULL_FREE(omod->filetypename);
- IF_NOT_NULL_FREE(omod->filetypetooltip);
+ g_free (omod->mimetype);
+ g_free (omod->extension);
+ g_free (omod->filetypename);
+ g_free (omod->filetypetooltip);
G_OBJECT_CLASS (output_parent_class)->finalize (object);
}
/**
@@ -667,23 +657,23 @@ sp_module_output_build (SPModule *module
while (child_repr != NULL) {
if (!strcmp(sp_repr_name(child_repr), "output")) {
child_repr = sp_repr_children(child_repr);
while (child_repr != NULL) {
if (!strcmp(sp_repr_name(child_repr), "extension")) {
- IF_NOT_NULL_FREE(omod->extension);
+ g_free (omod->extension);
omod->extension = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "mimetype")) {
- IF_NOT_NULL_FREE(omod->mimetype);
+ g_free (omod->mimetype);
omod->mimetype = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "filetypename")) {
- IF_NOT_NULL_FREE(omod->filetypename);
+ g_free (omod->filetypename);
omod->filetypename = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
if (!strcmp(sp_repr_name(child_repr), "filetypetooltip")) {
- IF_NOT_NULL_FREE(omod->filetypetooltip);
+ g_free (omod->filetypetooltip);
omod->filetypetooltip = g_strdup(sp_repr_content(sp_repr_children(child_repr)));
}
child_repr = sp_repr_next(child_repr);
}
Index: src/sp-anchor.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/sp-anchor.c,v
retrieving revision 1.2
diff -d -p -U5 -r1.2 sp-anchor.c
--- src/sp-anchor.c 2 Nov 2003 00:46:23 -0000 1.2
+++ src/sp-anchor.c 30 Nov 2003 03:34:38 -0000
@@ -130,11 +130,11 @@ sp_anchor_set (SPObject *object, unsigne
anchor = SP_ANCHOR (object);
switch (key) {
case SP_ATTR_XLINK_HREF:
- if (anchor->href) g_free (anchor->href);
+ g_free (anchor->href);
anchor->href = g_strdup (value);
sp_object_request_modified (object, SP_OBJECT_MODIFIED_FLAG);
break;
case SP_ATTR_XLINK_TYPE:
case SP_ATTR_XLINK_ROLE:
Index: src/sp-image.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/sp-image.c,v
retrieving revision 1.2
diff -d -p -U5 -r1.2 sp-image.c
--- src/sp-image.c 31 Oct 2003 07:05:50 -0000 1.2
+++ src/sp-image.c 30 Nov 2003 03:34:38 -0000
@@ -171,11 +171,11 @@ sp_image_set (SPObject *object, unsigned
image = SP_IMAGE (object);
switch (key) {
case SP_ATTR_XLINK_HREF:
- if (image->href) g_free (image->href);
+ g_free (image->href);
image->href = (value) ? g_strdup (value) : NULL;
sp_object_request_update (object, SP_OBJECT_MODIFIED_FLAG | SP_IMAGE_HREF_MODIFIED_FLAG);
break;
case SP_ATTR_X:
if (sp_svg_length_read_lff (value, &unit, &image->x.value, &image->x.computed) &&
Index: src/sp-text.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/sp-text.c,v
retrieving revision 1.6
diff -d -p -U5 -r1.6 sp-text.c
--- src/sp-text.c 16 Nov 2003 23:37:19 -0000 1.6
+++ src/sp-text.c 30 Nov 2003 03:34:39 -0000
@@ -132,12 +132,12 @@ sp_string_release (SPObject *object)
{
SPString *string;
string = SP_STRING (object);
- if (string->p) g_free (string->p);
- if (string->text) g_free (string->text);
+ g_free (string->p);
+ g_free (string->text);
if (((SPObjectClass *) string_parent_class)->release)
((SPObjectClass *) string_parent_class)->release (object);
}
@@ -149,13 +149,13 @@ sp_string_read_content (SPObject *object
SPString *string;
const gchar *t;
string = SP_STRING (object);
- if (string->p) g_free (string->p);
+ g_free (string->p);
string->p = NULL;
- if (string->text) g_free (string->text);
+ g_free (string->text);
t = sp_repr_content (object->repr);
string->text = (t) ? g_strdup (t) : NULL;
/* Is this correct? I think so (Lauris) */
/* Virtual method will be invoked BEFORE signal, so we can update there */
@@ -295,11 +295,11 @@ sp_string_set_shape (SPString *string, S
sp_chars_clear (chars);
if (!string->text || !*string->text) return;
len = g_utf8_strlen (string->text, -1);
if (!len) return;
- if (string->p) g_free (string->p);
+ g_free (string->p);
string->p = g_new (NRPointF, len + 1);
/* fixme: Adjusted value (Lauris) */
size = style->font_size.computed;
face = nr_type_directory_lookup_fuzzy (style->text->font_family.value, sp_text_font_style_to_lookup (style));
Index: src/sp-use.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/sp-use.c,v
retrieving revision 1.2
diff -d -p -U5 -r1.2 sp-use.c
--- src/sp-use.c 2 Nov 2003 00:30:53 -0000 1.2
+++ src/sp-use.c 30 Nov 2003 03:34:39 -0000
@@ -147,11 +147,11 @@ sp_use_release (SPObject *object)
if (use->child) {
use->child = sp_object_detach_unref (SP_OBJECT (object), use->child);
}
- if (use->href) g_free (use->href);
+ g_free (use->href);
if (((SPObjectClass *) parent_class)->release)
((SPObjectClass *) parent_class)->release (object);
}
Index: src/style.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/style.c,v
retrieving revision 1.4
diff -d -p -U5 -r1.4 style.c
--- src/style.c 16 Nov 2003 23:37:19 -0000 1.4
+++ src/style.c 30 Nov 2003 03:34:39 -0000
@@ -259,13 +259,11 @@ sp_style_unref (SPStyle *style)
/* if (style->object) gtk_signal_disconnect_by_data (GTK_OBJECT (style->object), style); */
if (style->object) g_signal_handlers_disconnect_matched (G_OBJECT(style->object), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, style);
if (style->text) sp_text_style_unref (style->text);
sp_style_paint_clear (style, &style->fill, TRUE, FALSE);
sp_style_paint_clear (style, &style->stroke, TRUE, FALSE);
- if (style->stroke_dash.dash) {
- g_free (style->stroke_dash.dash);
- }
+ g_free (style->stroke_dash.dash);
g_free (style);
}
return NULL;
}
@@ -472,11 +470,11 @@ sp_style_merge_property (SPStyle *style,
SPS_READ_IENUM_IF_UNSET (&style->font_stretch, val, enum_font_stretch, TRUE);
break;
case SP_PROP_FONT:
if (!style->text_private) sp_style_privatize_text (style);
if (!style->text->font.set) {
- if (style->text->font.value) g_free (style->text->font.value);
+ g_free (style->text->font.value);
style->text->font.value = g_strdup (val);
style->text->font.set = TRUE;
style->text->font.inherit = (val && !strcmp (val, "inherit"));
}
break;
@@ -812,11 +810,11 @@ sp_style_merge_from_parent (SPStyle *sty
style->writing_mode.computed = parent->writing_mode.computed;
}
if (style->text && parent->text) {
if (!style->text->font_family.set || style->text->font_family.inherit) {
- if (style->text->font_family.value) g_free (style->text->font_family.value);
+ g_free (style->text->font_family.value);
style->text->font_family.value = g_strdup (parent->text->font_family.value);
}
}
}
@@ -1222,12 +1220,12 @@ static SPTextStyle *
sp_text_style_unref (SPTextStyle *st)
{
st->refcount -= 1;
if (st->refcount < 1) {
- if (st->font.value) g_free (st->font.value);
- if (st->font_family.value) g_free (st->font_family.value);
+ g_free (st->font.value);
+ g_free (st->font_family.value);
g_free (st);
}
return NULL;
}
@@ -1316,11 +1314,11 @@ sp_style_read_ienum (SPIEnum *val, const
}
static void
sp_style_read_istring (SPIString *val, const gchar *str)
{
- if (val->value) g_free (val->value);
+ g_free (val->value);
if (!strcmp (str, "inherit")) {
val->set = TRUE;
val->inherit = TRUE;
val->value = NULL;
Index: src/bonobo/embeddable-document.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/bonobo/embeddable-document.c,v
retrieving revision 1.2
diff -d -p -U5 -r1.2 embeddable-document.c
--- src/bonobo/embeddable-document.c 30 Oct 2003 05:52:06 -0000 1.2
+++ src/bonobo/embeddable-document.c 30 Nov 2003 03:34:39 -0000
@@ -132,11 +132,11 @@ sp_bonobo_stream_read (Bonobo_Stream str
do {
Bonobo_Stream_read (stream, STREAM_CHUNK_SIZE, &iobuf, &ev);
if (ev._major != CORBA_NO_EXCEPTION) {
- if (* buffer != NULL) g_free (* buffer);
+ g_free (* buffer);
len = -1;
break;
}
* buffer = g_realloc (* buffer, len + iobuf->_length);
@@ -204,11 +204,11 @@ sp_embeddable_document_ps_save (BonoboPe
document = SP_EMBEDDABLE_DOCUMENT (closure);
/* FIXME: super dirty but functional */
do {
- if (filename) g_free (filename);
+ g_free (filename);
filename = g_strdup ("inkscapeXXXXXX");
fd = mkstemp (filename);
} while (fd == -1);
Index: src/dialogs/stroke-style.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/dialogs/stroke-style.c,v
retrieving revision 1.20
diff -d -p -U5 -r1.20 stroke-style.c
--- src/dialogs/stroke-style.c 29 Nov 2003 22:03:24 -0000 1.20
+++ src/dialogs/stroke-style.c 30 Nov 2003 03:34:39 -0000
@@ -1101,11 +1101,11 @@ sp_stroke_style_scale_line (SPWidget *sp
g_snprintf (c, 32, "%g", dist);
sp_repr_css_set_property (css, "stroke-width", c);
/* Set dash */
sp_stroke_style_set_scaled_dash (css, ndash, dash, offset, dist);
sp_repr_css_change_recursive (SP_OBJECT_REPR (i->data), css, "style");
- if (dash) g_free (dash);
+ g_free (dash);
}
} else {
for (r = reprs; r != NULL; r = r->next) {
double length;
double *dash, offset;
@@ -1115,11 +1115,11 @@ sp_stroke_style_scale_line (SPWidget *sp
sp_convert_distance (&length, sp_unit_selector_get_unit (us), SP_PS_UNIT);
g_snprintf (c, 32, "%g", length * 1.25);
sp_repr_css_set_property (css, "stroke-width", c);
sp_stroke_style_set_scaled_dash (css, ndash, dash, offset, length);
sp_repr_css_change_recursive ((SPRepr *) r->data, css, "style");
- if (dash) g_free (dash);
+ g_free (dash);
}
}
sp_repr_css_attr_unref (css);
if (spw->inkscape) sp_document_done (SP_WIDGET_DOCUMENT (spw));
Index: src/dialogs/text-edit.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/dialogs/text-edit.c,v
retrieving revision 1.5
diff -d -p -U5 -r1.5 text-edit.c
--- src/dialogs/text-edit.c 27 Nov 2003 00:55:38 -0000 1.5
+++ src/dialogs/text-edit.c 30 Nov 2003 03:34:39 -0000
@@ -637,11 +637,11 @@ sp_text_edit_dialog_text_changed (GtkTex
if (str && *str) {
sp_font_preview_set_phrase (SP_FONT_PREVIEW (preview), str);
} else {
sp_font_preview_set_phrase (SP_FONT_PREVIEW (preview), NULL);
}
- if (str) g_free (str);
+ g_free (str);
if (text) {
gtk_widget_set_sensitive (apply, TRUE);
}
gtk_widget_set_sensitive (def, TRUE);
Index: src/helper/sodipodi-ctrl.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/helper/sodipodi-ctrl.c,v
retrieving revision 1.3
diff -d -p -U5 -r1.3 sodipodi-ctrl.c
--- src/helper/sodipodi-ctrl.c 30 Oct 2003 11:33:16 -0000 1.3
+++ src/helper/sodipodi-ctrl.c 30 Nov 2003 03:34:39 -0000
@@ -298,11 +298,11 @@ sp_ctrl_build_cache (SPCtrl *ctrl)
} else { sr = fr; sg = fg; sb = fb; sa = fa; }
side = (ctrl->span * 2 +1);
c = ctrl->span ;
- if (ctrl->cache) g_free (ctrl->cache);
+ g_free (ctrl->cache);
size = (side) * (side) * 4;
ctrl->cache = (guchar*)g_malloc (size);
if (side < 2) return;
switch (ctrl->shape) {
Index: src/modules/ps.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/modules/ps.c,v
retrieving revision 1.8
diff -d -p -U5 -r1.8 ps.c
--- src/modules/ps.c 16 Nov 2003 23:37:19 -0000 1.8
+++ src/modules/ps.c 30 Nov 2003 03:34:39 -0000
@@ -854,12 +854,12 @@ sp_ps_print_image (FILE *ofp, guchar *px
#if 0
fprintf (ofp, "showpage\n");
g_free (data);
#endif
- if (packb != NULL) g_free (packb);
- if (plane != NULL) g_free (plane);
+ g_free (packb);
+ g_free (plane);
#if 0
if (ferror (ofp))
{
g_message (_("write error occured"));
Index: src/widgets/font-selector.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/widgets/font-selector.c,v
retrieving revision 1.3
diff -d -p -U5 -r1.3 font-selector.c
--- src/widgets/font-selector.c 16 Nov 2003 23:37:19 -0000 1.3
+++ src/widgets/font-selector.c 30 Nov 2003 03:34:39 -0000
@@ -617,11 +617,11 @@ sp_font_preview_set_rgba32 (SPFontPrevie
}
void
sp_font_preview_set_phrase (SPFontPreview *fprev, const gchar *phrase)
{
- if (fprev->phrase) g_free (fprev->phrase);
+ g_free (fprev->phrase);
if (phrase) {
fprev->phrase = g_strdup (phrase);
} else {
fprev->phrase = NULL;
}
Index: src/widgets/gradient-image.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/widgets/gradient-image.c,v
retrieving revision 1.2
diff -d -p -U5 -r1.2 gradient-image.c
--- src/widgets/gradient-image.c 30 Oct 2003 20:48:05 -0000 1.2
+++ src/widgets/gradient-image.c 30 Nov 2003 03:34:39 -0000
@@ -149,11 +149,11 @@ sp_gradient_image_size_allocate (GtkWidg
image = SP_GRADIENT_IMAGE (widget);
widget->allocation = *allocation;
if (GTK_WIDGET_REALIZED (widget)) {
- if (image->px) g_free (image->px);
+ g_free (image->px);
image->px = g_new (guchar, 3 * VBLOCK * allocation->width);
}
sp_gradient_image_update (image);
}
Index: src/xml/repr-action.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/xml/repr-action.c,v
retrieving revision 1.5
diff -d -p -U5 -r1.5 repr-action.c
--- src/xml/repr-action.c 29 Nov 2003 02:55:37 -0000 1.5
+++ src/xml/repr-action.c 30 Nov 2003 03:34:39 -0000
@@ -228,12 +228,11 @@ coalesce_chgattr (SPReprAction *action)
{
/* ensure changes are continuous */
if (strcmp(action->act.chgattr.oldval,
iter->act.chgattr.newval)) break;
- if (action->act.chgattr.oldval)
- g_free (action->act.chgattr.oldval);
+ g_free (action->act.chgattr.oldval);
action->act.chgattr.oldval = iter->act.chgattr.oldval;
iter->act.chgattr.oldval = NULL;
free_action (iter);
prev->next = next;
@@ -262,12 +261,11 @@ coalesce_chgcontent (SPReprAction *actio
if ( action->repr == iter->repr ) {
/* ensure changes are continuous */
if (strcmp(action->act.chgcontent.oldval,
iter->act.chgcontent.newval)) break;
- if (action->act.chgcontent.oldval)
- g_free (action->act.chgcontent.oldval);
+ g_free (action->act.chgcontent.oldval);
action->act.chgcontent.oldval =
iter->act.chgcontent.oldval;
iter->act.chgcontent.oldval = NULL;
@@ -429,20 +427,16 @@ free_action (SPReprAction *action)
sp_repr_unref (action->act.del.child);
if (action->act.del.ref)
sp_repr_unref (action->act.del.ref);
break;
case SP_REPR_ACTION_CHGATTR:
- if (action->act.chgattr.oldval)
- g_free (action->act.chgattr.oldval);
- if (action->act.chgattr.newval)
- g_free (action->act.chgattr.newval);
+ g_free (action->act.chgattr.oldval);
+ g_free (action->act.chgattr.newval);
break;
case SP_REPR_ACTION_CHGCONTENT:
- if (action->act.chgcontent.oldval)
- g_free (action->act.chgcontent.oldval);
- if (action->act.chgcontent.newval)
- g_free (action->act.chgcontent.newval);
+ g_free (action->act.chgcontent.oldval);
+ g_free (action->act.chgcontent.newval);
break;
case SP_REPR_ACTION_CHGORDER:
sp_repr_unref (action->act.chgorder.child);
if (action->act.chgorder.oldref)
sp_repr_unref (action->act.chgorder.oldref);
Index: src/xml/repr.c
===================================================================
RCS file: /cvsroot/inkscape/inkscape/src/xml/repr.c,v
retrieving revision 1.5
diff -d -p -U5 -r1.5 repr.c
--- src/xml/repr.c 16 Nov 2003 23:37:20 -0000 1.5
+++ src/xml/repr.c 30 Nov 2003 03:34:39 -0000
@@ -173,11 +173,11 @@ repr_finalize (SPRepr *repr)
for (rl = repr->listeners; rl; rl = rl->next) {
if (rl->vector->destroy) (* rl->vector->destroy) (repr, rl->data);
}
while (repr->children) sp_repr_remove_child (repr, repr->children);
while (repr->attributes) sp_repr_remove_attribute (repr, repr->attributes);
- if (repr->content) g_free (repr->content);
+ g_free (repr->content);
while (repr->listeners) sp_repr_remove_listener (repr, repr->listeners);
}
static void
repr_doc_finalize (SPRepr *repr)
@@ -859,14 +859,14 @@ sp_repr_merge (SPRepr *repr, const SPRep
g_return_val_if_fail (repr != NULL, FALSE);
g_return_val_if_fail (src != NULL, FALSE);
g_return_val_if_fail (key != NULL, FALSE);
if (src->content) {
- if (repr->content) g_free (repr->content);
+ g_free (repr->content);
repr->content = g_strdup (src->content);
} else {
- if (repr->content) g_free (repr->content);
+ g_free (repr->content);
repr->content = NULL;
}
for (child = src->children; child != NULL; child = child->next) {
SPRepr *rch;
19 years, 12 months