]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
plugins: fts-solr: Move solr_xml_parse() from solr-connection.c to solr-response.c.
authorStephan Bosch <stephan.bosch@open-xchange.com>
Tue, 8 Oct 2019 16:56:54 +0000 (18:56 +0200)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Thu, 9 Jan 2020 12:52:43 +0000 (12:52 +0000)
src/plugins/fts-solr/solr-connection.c
src/plugins/fts-solr/solr-response.c

index cf5b82e45eb4d5e73dd99334fe8dc2a8449c2899..98bc61288fe6f16f28af1208ff2c911a3bcc6b30 100644 (file)
@@ -45,32 +45,6 @@ struct solr_connection {
 
 #include "solr-response.c"
 
-static int
-solr_xml_parse(struct solr_connection *conn,
-              const void *data, size_t size, bool done)
-{
-       enum XML_Error err;
-       int line, col;
-
-       if (conn->xml_failed)
-               return -1;
-
-       if (XML_Parse(conn->xml_parser, data, size, done ? 1 : 0) != 0)
-               return 0;
-
-       err = XML_GetErrorCode(conn->xml_parser);
-       if (err != XML_ERROR_FINISHED) {
-               line = XML_GetCurrentLineNumber(conn->xml_parser);
-               col = XML_GetCurrentColumnNumber(conn->xml_parser);
-               i_error("fts_solr: Invalid XML input at %d:%d: %s "
-                       "(near: %.*s)", line, col, XML_ErrorString(err),
-                       (int)I_MIN(size, 128), (const char *)data);
-               conn->xml_failed = TRUE;
-               return -1;
-       }
-       return 0;
-}
-
 /* Regardless of the specified URL, make sure path ends in '/' */
 static char *solr_connection_create_http_base_url(struct http_url *http_url)
 {
index 05abedce7065c34c806d6ed7bbc3a82e9c54293d..6fb26d5087a3ef819b790958654e713317d5be48 100644 (file)
@@ -37,3 +37,29 @@ struct solr_lookup_xml_context {
        HASH_TABLE(char *, struct solr_result *) mailboxes;
        ARRAY(struct solr_result *) results;
 };
+
+static int
+solr_xml_parse(struct solr_connection *conn,
+              const void *data, size_t size, bool done)
+{
+       enum XML_Error err;
+       int line, col;
+
+       if (conn->xml_failed)
+               return -1;
+
+       if (XML_Parse(conn->xml_parser, data, size, done ? 1 : 0) != 0)
+               return 0;
+
+       err = XML_GetErrorCode(conn->xml_parser);
+       if (err != XML_ERROR_FINISHED) {
+               line = XML_GetCurrentLineNumber(conn->xml_parser);
+               col = XML_GetCurrentColumnNumber(conn->xml_parser);
+               i_error("fts_solr: Invalid XML input at %d:%d: %s "
+                       "(near: %.*s)", line, col, XML_ErrorString(err),
+                       (int)I_MIN(size, 128), (const char *)data);
+               conn->xml_failed = TRUE;
+               return -1;
+       }
+       return 0;
+}