Fixed _log_open_tag to remove namespace prefix with libexpat
This commit is contained in:
@@ -748,6 +748,7 @@ static void _log_open_tag(xmpp_conn_t *conn, char **attrs)
|
|||||||
size_t pos;
|
size_t pos;
|
||||||
int len;
|
int len;
|
||||||
int i;
|
int i;
|
||||||
|
char *attr;
|
||||||
|
|
||||||
if (!attrs) return;
|
if (!attrs) return;
|
||||||
|
|
||||||
@@ -756,10 +757,11 @@ static void _log_open_tag(xmpp_conn_t *conn, char **attrs)
|
|||||||
if (len < 0) return;
|
if (len < 0) return;
|
||||||
|
|
||||||
pos += len;
|
pos += len;
|
||||||
|
|
||||||
for (i = 0; attrs[i]; i += 2) {
|
for (i = 0; attrs[i]; i += 2) {
|
||||||
|
attr = parser_attr_name(conn->ctx, attrs[i]);
|
||||||
len = xmpp_snprintf(&buf[pos], 4096 - pos, " %s='%s'",
|
len = xmpp_snprintf(&buf[pos], 4096 - pos, " %s='%s'",
|
||||||
attrs[i], attrs[i+1]);
|
attr, attrs[i+1]);
|
||||||
|
xmpp_free(conn->ctx, attr);
|
||||||
if (len < 0) return;
|
if (len < 0) return;
|
||||||
pos += len;
|
pos += len;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
|||||||
parser_stanza_callback stanzacb,
|
parser_stanza_callback stanzacb,
|
||||||
void *userdata);
|
void *userdata);
|
||||||
void parser_free(parser_t * const parser);
|
void parser_free(parser_t * const parser);
|
||||||
|
char* parser_attr_name(xmpp_ctx_t *ctx, char *nsname);
|
||||||
int parser_reset(parser_t *parser);
|
int parser_reset(parser_t *parser);
|
||||||
int parser_feed(parser_t *parser, char *chunk, int len);
|
int parser_feed(parser_t *parser, char *chunk, int len);
|
||||||
|
|
||||||
|
|||||||
@@ -220,6 +220,11 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
|||||||
return parser;
|
return parser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char* parser_attr_name(xmpp_ctx_t *ctx, char *nsname)
|
||||||
|
{
|
||||||
|
return _xml_name(ctx, nsname);
|
||||||
|
}
|
||||||
|
|
||||||
/* free a parser */
|
/* free a parser */
|
||||||
void parser_free(parser_t *parser)
|
void parser_free(parser_t *parser)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -238,6 +238,11 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
|||||||
return parser;
|
return parser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char* parser_attr_name(xmpp_ctx_t *ctx, char *nsname)
|
||||||
|
{
|
||||||
|
return xmpp_strdup(ctx, nsname);
|
||||||
|
}
|
||||||
|
|
||||||
/* free a parser */
|
/* free a parser */
|
||||||
void parser_free(parser_t *parser)
|
void parser_free(parser_t *parser)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user