[geany/geany-plugins] a5a43a: pretty-printer: Don't needlessly duplicated the document contents
Colomban Wendling
git-noreply at xxxxx
Thu Jun 9 13:09:17 UTC 2016
Branch: refs/heads/master
Author: Colomban Wendling <ban at herbesfolles.org>
Committer: Colomban Wendling <ban at herbesfolles.org>
Date: Sat, 20 Feb 2016 19:11:57 UTC
Commit: a5a43aad42d669468e8d75f56c5964c4f9c44c70
https://github.com/geany/geany-plugins/commit/a5a43aad42d669468e8d75f56c5964c4f9c44c70
Log Message:
-----------
pretty-printer: Don't needlessly duplicated the document contents
Modified Paths:
--------------
pretty-printer/src/PluginEntry.c
Modified: pretty-printer/src/PluginEntry.c
11 lines changed, 4 insertions(+), 7 deletions(-)
===================================================================
@@ -114,7 +114,7 @@ void xml_format(GtkMenuItem* menuitem, gpointer gdata)
GeanyEditor* editor;
ScintillaObject* sco;
int input_length;
- gchar* input_buffer;
+ const gchar* input_buffer;
int output_length;
gchar* output_buffer;
xmlDoc* parsedDocument;
@@ -131,16 +131,15 @@ void xml_format(GtkMenuItem* menuitem, gpointer gdata)
if (prettyPrintingOptions == NULL) { prettyPrintingOptions = createDefaultPrettyPrintingOptions(); }
/* retrieves the text */
- input_length = sci_get_length(sco)+1;
- input_buffer = sci_get_contents(sco, input_length);
+ input_length = sci_get_length(sco);
+ input_buffer = (gchar *) scintilla_send_message(sco, SCI_GETCHARACTERPOINTER, 0, 0);
/* checks if the data is an XML format */
- parsedDocument = xmlParseDoc((unsigned char*)buffer);
+ parsedDocument = xmlParseDoc((const unsigned char*)input_buffer);
/* this is not a valid xml => exit with an error message */
if(parsedDocument == NULL)
{
- g_free(input_buffer);
dialogs_show_msgbox(GTK_MESSAGE_ERROR, _("Unable to parse the content as XML."));
return;
}
@@ -152,7 +151,6 @@ void xml_format(GtkMenuItem* menuitem, gpointer gdata)
result = processXMLPrettyPrinting(input_buffer, input_length, &output_buffer, &output_length, prettyPrintingOptions);
if (result != PRETTY_PRINTING_SUCCESS)
{
- g_free(input_buffer);
dialogs_show_msgbox(GTK_MESSAGE_ERROR, _("Unable to process PrettyPrinting on the specified XML because some features are not supported.\n\nSee Help > Debug messages for more details..."));
return;
}
@@ -168,6 +166,5 @@ void xml_format(GtkMenuItem* menuitem, gpointer gdata)
fileType = filetypes_index(GEANY_FILETYPES_XML);
document_set_filetype(doc, fileType);
- g_free(input_buffer);
g_free(output_buffer);
}
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Plugins-Commits
mailing list