SF.net SVN: geany-plugins:[2187] trunk/geany-plugins/pretty-printer/src/ PrettyPrinter.c
ctabin at users.sourceforge.net
ctabin at xxxxx
Wed Aug 31 22:24:53 UTC 2011
Revision: 2187
http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=2187&view=rev
Author: ctabin
Date: 2011-08-31 22:24:52 +0000 (Wed, 31 Aug 2011)
Log Message:
-----------
Pretty-Printer: reallocation bugfix (C.Wendling)
Modified Paths:
--------------
trunk/geany-plugins/pretty-printer/src/PrettyPrinter.c
Modified: trunk/geany-plugins/pretty-printer/src/PrettyPrinter.c
===================================================================
--- trunk/geany-plugins/pretty-printer/src/PrettyPrinter.c 2011-08-31 19:52:27 UTC (rev 2186)
+++ trunk/geany-plugins/pretty-printer/src/PrettyPrinter.c 2011-08-31 22:24:52 UTC (rev 2187)
@@ -73,6 +73,8 @@
//============================================ GENERAL FUNCTIONS =======================================
+#define PP_ERROR(format, ...) fprintf(stderr, format "\n", ##__VA_ARGS__);
+
int processXMLPrettyPrinting(char** buffer, int* length, PrettyPrintingOptions* ppOptions)
{
//empty buffer, nothing to process
@@ -101,7 +103,7 @@
xmlPrettyPrintedLength = *length;
xmlPrettyPrinted = (char*)malloc(sizeof(char)*(*length));
- if (xmlPrettyPrinted == NULL) { fprintf(stderr, "Allocation error"); return PRETTY_PRINTING_SYSTEM_ERROR; }
+ if (xmlPrettyPrinted == NULL) { PP_ERROR("Allocation error (initialisation)"); return PRETTY_PRINTING_SYSTEM_ERROR; }
//go to the first char
readWhites(TRUE);
@@ -113,8 +115,9 @@
putCharInBuffer('\0');
//adjust the final size
- xmlPrettyPrinted = realloc(xmlPrettyPrinted, xmlPrettyPrintedIndex);
- if (xmlPrettyPrinted == NULL) { fprintf(stderr, "Allocation error"); return PRETTY_PRINTING_SYSTEM_ERROR; }
+ char* reallocated = (char*)realloc(xmlPrettyPrinted, xmlPrettyPrintedIndex);
+ if (reallocated == NULL) { PP_ERROR("Allocation error (reallocation size is %d)", xmlPrettyPrintedIndex); return PRETTY_PRINTING_SYSTEM_ERROR; }
+ xmlPrettyPrinted = reallocated;
//freeing the unused values
if (freeOptions) { free(options); }
@@ -147,7 +150,7 @@
PrettyPrintingOptions* defaultOptions = (PrettyPrintingOptions*)malloc(sizeof(PrettyPrintingOptions));
if (defaultOptions == NULL)
{
- fprintf(stderr, "Unable to allocate memory for PrettyPrintingOptions");
+ PP_ERROR("Unable to allocate memory for PrettyPrintingOptions");
return NULL;
}
@@ -189,8 +192,9 @@
{
if (charToAdd == '\0') { ++xmlPrettyPrintedLength; }
else { xmlPrettyPrintedLength += inputBufferLength; }
- xmlPrettyPrinted = (char*)realloc(xmlPrettyPrinted, xmlPrettyPrintedLength);
- if (xmlPrettyPrinted == NULL) { fprintf(stderr, "Allocation error"); return; }
+ char* reallocated = (char*)realloc(xmlPrettyPrinted, xmlPrettyPrintedLength);
+ if (reallocated == NULL) { PP_ERROR("Allocation error (char was %c)", charToAdd); return; }
+ xmlPrettyPrinted = reallocated;
}
//putting the char and increase the index for the next one
@@ -576,7 +580,7 @@
//store the name
char* nodeName = (char*)malloc(sizeof(char)*nodeNameLength+1);
- if (nodeName == NULL) { fprintf(stderr, "Allocation error"); return ; }
+ if (nodeName == NULL) { PP_ERROR("Allocation error (node name length is %d)", nodeNameLength); return ; }
nodeName[nodeNameLength] = '\0';
int i;
for (i=0 ; i<nodeNameLength ; ++i)
@@ -1083,7 +1087,7 @@
#ifdef HAVE_GLIB
g_warning(msg, va);
#else
- fprintf(stderr, msg, va);
+ PP_ERROR(msg, va);
#endif
va_end(va);
@@ -1100,7 +1104,7 @@
xmlPrettyPrintedLength,
xmlPrettyPrintedIndex);
#else
- fprintf(stderr, "\n===== INPUT =====\n%s\n=================\ninputLength = %d\ninputIndex = %d\noutputLength = %d\noutputIndex = %d\n",
+ PP_ERROR("\n===== INPUT =====\n%s\n=================\ninputLength = %d\ninputIndex = %d\noutputLength = %d\noutputIndex = %d\n",
inputBuffer,
inputBufferLength,
inputBufferIndex,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Plugins-Commits
mailing list