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;
|
||||
int len;
|
||||
int i;
|
||||
char *attr;
|
||||
|
||||
if (!attrs) return;
|
||||
|
||||
@@ -756,10 +757,11 @@ static void _log_open_tag(xmpp_conn_t *conn, char **attrs)
|
||||
if (len < 0) return;
|
||||
|
||||
pos += len;
|
||||
|
||||
for (i = 0; attrs[i]; i += 2) {
|
||||
attr = parser_attr_name(conn->ctx, attrs[i]);
|
||||
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;
|
||||
pos += len;
|
||||
}
|
||||
|
||||
@@ -34,6 +34,7 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
||||
parser_stanza_callback stanzacb,
|
||||
void *userdata);
|
||||
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_feed(parser_t *parser, char *chunk, int len);
|
||||
|
||||
|
||||
@@ -220,6 +220,11 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
||||
return parser;
|
||||
}
|
||||
|
||||
char* parser_attr_name(xmpp_ctx_t *ctx, char *nsname)
|
||||
{
|
||||
return _xml_name(ctx, nsname);
|
||||
}
|
||||
|
||||
/* free a parser */
|
||||
void parser_free(parser_t *parser)
|
||||
{
|
||||
|
||||
@@ -238,6 +238,11 @@ parser_t *parser_new(xmpp_ctx_t *ctx,
|
||||
return parser;
|
||||
}
|
||||
|
||||
char* parser_attr_name(xmpp_ctx_t *ctx, char *nsname)
|
||||
{
|
||||
return xmpp_strdup(ctx, nsname);
|
||||
}
|
||||
|
||||
/* free a parser */
|
||||
void parser_free(parser_t *parser)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user