Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 42 additions & 42 deletions Expat/Expat.xs
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ static void suspend_callbacks(CallbackVector *);
static void resume_callbacks(CallbackVector *);

static SV *
newUTF8SVpv(char *s, STRLEN len) {
newUTF8SVpv(const char *s, STRLEN len) {
SV *sv;

sv = newSVpv(s, len);
Expand All @@ -117,7 +117,7 @@ newUTF8SVpv(char *s, STRLEN len) {
} /* End new UTF8SVpv */

static SV *
newUTF8SVpvn(char *s, STRLEN len) {
newUTF8SVpvn(const char *s, STRLEN len) {
SV *sv;

sv = newSV(0);
Expand Down Expand Up @@ -155,7 +155,7 @@ free_cbv(CallbackVector *cbv)
}

static void
append_error(XML_Parser parser, char * err)
append_error(XML_Parser parser, const char * err)
{
dSP;
CallbackVector * cbv;
Expand All @@ -171,7 +171,7 @@ append_error(XML_Parser parser, char * err)
int dopos = !err && errctx && SvOK(*errctx);

if (! err)
err = (char *) XML_ErrorString(XML_GetErrorCode(parser));
err = XML_ErrorString(XML_GetErrorCode(parser));

/* Avoid truncation on 32-bit perls when expat is built with
XML_LARGE_SIZE (long long types). Use NV (double, 53-bit
Expand Down Expand Up @@ -240,7 +240,7 @@ generate_model(XML_Content *model) {

switch(model->type) {
case XML_CTYPE_NAME:
hv_store(hash, "Tag", 3, newUTF8SVpv((char *)model->name, 0), 0);
hv_store(hash, "Tag", 3, newUTF8SVpv(model->name, 0), 0);
break;

case XML_CTYPE_MIXED:
Expand Down Expand Up @@ -416,7 +416,7 @@ gen_ns_name(const char * name, HV * ns_table, AV * ns_list)

if (pos && pos > name)
{
SV ** name_ent = hv_fetch(ns_table, (char *) name,
SV ** name_ent = hv_fetch(ns_table, name,
pos - name, TRUE);
ret = newUTF8SVpv(&pos[1], 0);

Expand All @@ -430,7 +430,7 @@ gen_ns_name(const char * name, HV * ns_table, AV * ns_list)
}
else
{
av_push(ns_list, newUTF8SVpv((char *) name, pos - name));
av_push(ns_list, newUTF8SVpv(name, pos - name));
index = av_len(ns_list);
sv_setiv(*name_ent, (IV) index);
}
Expand All @@ -440,7 +440,7 @@ gen_ns_name(const char * name, HV * ns_table, AV * ns_list)
}
}
else
ret = newUTF8SVpv((char *) name, 0);
ret = newUTF8SVpv(name, 0);

return ret;
} /* End gen_ns_name */
Expand Down Expand Up @@ -496,7 +496,7 @@ startElement(void *userData, const char *name, const char **atts)
if (do_ns)
elname = gen_ns_name(name, cbv->nstab, cbv->nslst);
else
elname = newUTF8SVpv((char *)name, 0);
elname = newUTF8SVpv(name, 0);

if (! skipping && SvTRUE(cbv->start_sv))
{
Expand All @@ -518,7 +518,7 @@ startElement(void *userData, const char *name, const char **atts)
SV * attname;

attname = (do_ns ? gen_ns_name(*atts, cbv->nstab, cbv->nslst)
: newUTF8SVpv((char *) *atts, 0));
: newUTF8SVpv(*atts, 0));

atts++;
PUSHs(sv_2mortal(attname));
Expand Down Expand Up @@ -668,8 +668,8 @@ nsStart(void *userdata, const XML_Char *prefix, const XML_Char *uri){
PUSHMARK(sp);
EXTEND(sp, 3);
PUSHs(cbv->self_sv);
PUSHs(prefix ? sv_2mortal(newUTF8SVpv((char *)prefix, 0)) : &PL_sv_undef);
PUSHs(uri ? sv_2mortal(newUTF8SVpv((char *)uri, 0)) : &PL_sv_undef);
PUSHs(prefix ? sv_2mortal(newUTF8SVpv(prefix, 0)) : &PL_sv_undef);
PUSHs(uri ? sv_2mortal(newUTF8SVpv(uri, 0)) : &PL_sv_undef);
PUTBACK;
call_method("NamespaceStart", G_DISCARD|G_VOID);

Expand All @@ -688,7 +688,7 @@ nsEnd(void *userdata, const XML_Char *prefix) {
PUSHMARK(sp);
EXTEND(sp, 2);
PUSHs(cbv->self_sv);
PUSHs(prefix ? sv_2mortal(newUTF8SVpv((char *)prefix, 0)) : &PL_sv_undef);
PUSHs(prefix ? sv_2mortal(newUTF8SVpv(prefix, 0)) : &PL_sv_undef);
PUTBACK;
call_method("NamespaceEnd", G_DISCARD|G_VOID);

Expand Down Expand Up @@ -734,7 +734,7 @@ elementDecl(void *data,
PUSHMARK(sp);
EXTEND(sp, 3);
PUSHs(cbv->self_sv);
PUSHs(sv_2mortal(newUTF8SVpv((char *)name, 0)));
PUSHs(sv_2mortal(newUTF8SVpv(name, 0)));
PUSHs(sv_2mortal(cmod));
PUTBACK;
call_sv(cbv->eledcl_sv, G_DISCARD|G_VOID);
Expand All @@ -756,7 +756,7 @@ attributeDecl(void *data,

if (dflt) {
dfltsv = newUTF8SVpv("'", 1);
sv_catpv(dfltsv, (char *) dflt);
sv_catpv(dfltsv, dflt);
sv_catpv(dfltsv, "'");
}
else {
Expand All @@ -768,9 +768,9 @@ attributeDecl(void *data,
PUSHMARK(sp);
EXTEND(sp, 5);
PUSHs(cbv->self_sv);
PUSHs(sv_2mortal(newUTF8SVpv((char *)elname, 0)));
PUSHs(sv_2mortal(newUTF8SVpv((char *)attname, 0)));
PUSHs(sv_2mortal(newUTF8SVpv((char *)att_type, 0)));
PUSHs(sv_2mortal(newUTF8SVpv(elname, 0)));
PUSHs(sv_2mortal(newUTF8SVpv(attname, 0)));
PUSHs(sv_2mortal(newUTF8SVpv(att_type, 0)));
PUSHs(sv_2mortal(dfltsv));
if (dflt && reqorfix)
XPUSHs(&PL_sv_yes);
Expand Down Expand Up @@ -800,11 +800,11 @@ entityDecl(void *data,
PUSHMARK(sp);
EXTEND(sp, 6);
PUSHs(cbv->self_sv);
PUSHs(sv_2mortal(newUTF8SVpv((char*)name, 0)));
PUSHs(value ? sv_2mortal(newUTF8SVpvn((char*)value, vlen)) : &PL_sv_undef);
PUSHs(sysid ? sv_2mortal(newUTF8SVpv((char *)sysid, 0)) : &PL_sv_undef);
PUSHs(pubid ? sv_2mortal(newUTF8SVpv((char *)pubid, 0)) : &PL_sv_undef);
PUSHs(notation ? sv_2mortal(newUTF8SVpv((char *)notation, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv(name, 0)));
PUSHs(value ? sv_2mortal(newUTF8SVpvn(value, vlen)) : &PL_sv_undef);
PUSHs(sysid ? sv_2mortal(newUTF8SVpv(sysid, 0)) : &PL_sv_undef);
PUSHs(pubid ? sv_2mortal(newUTF8SVpv(pubid, 0)) : &PL_sv_undef);
PUSHs(notation ? sv_2mortal(newUTF8SVpv(notation, 0)) : &PL_sv_undef);
if (isparam)
XPUSHs(&PL_sv_yes);
PUTBACK;
Expand Down Expand Up @@ -882,9 +882,9 @@ xmlDecl(void *userData,
PUSHMARK(sp);
EXTEND(sp, 4);
PUSHs(cbv->self_sv);
PUSHs(version ? sv_2mortal(newUTF8SVpv((char *)version, 0))
PUSHs(version ? sv_2mortal(newUTF8SVpv(version, 0))
: &PL_sv_undef);
PUSHs(encoding ? sv_2mortal(newUTF8SVpv((char *)encoding, 0))
PUSHs(encoding ? sv_2mortal(newUTF8SVpv(encoding, 0))
: &PL_sv_undef);
PUSHs(standalone == -1 ? &PL_sv_undef
: (standalone ? &PL_sv_yes : &PL_sv_no));
Expand All @@ -911,11 +911,11 @@ unparsedEntityDecl(void *userData,
PUSHMARK(sp);
EXTEND(sp, 6);
PUSHs(cbv->self_sv);
PUSHs(sv_2mortal(newUTF8SVpv((char*) entity, 0)));
PUSHs(base ? sv_2mortal(newUTF8SVpv((char*) base, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv((char*) sysid, 0)));
PUSHs(pubid ? sv_2mortal(newUTF8SVpv((char*) pubid, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv((char*) notation, 0)));
PUSHs(sv_2mortal(newUTF8SVpv(entity, 0)));
PUSHs(base ? sv_2mortal(newUTF8SVpv(base, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv(sysid, 0)));
PUSHs(pubid ? sv_2mortal(newUTF8SVpv(pubid, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv(notation, 0)));
PUTBACK;
call_sv(cbv->unprsd_sv, G_DISCARD|G_VOID);

Expand All @@ -939,10 +939,10 @@ notationDecl(void *userData,
PUSHMARK(sp);
EXTEND(sp, 5);
PUSHs(cbv->self_sv);
PUSHs(sv_2mortal(newUTF8SVpv((char*) name, 0)));
PUSHs(base ? sv_2mortal(newUTF8SVpv((char *) base, 0)) : &PL_sv_undef);
PUSHs(sysid ? sv_2mortal(newUTF8SVpv((char *) sysid, 0)) : &PL_sv_undef);
PUSHs(pubid ? sv_2mortal(newUTF8SVpv((char *) pubid, 0)) : &PL_sv_undef);
PUSHs(sv_2mortal(newUTF8SVpv(name, 0)));
PUSHs(base ? sv_2mortal(newUTF8SVpv(base, 0)) : &PL_sv_undef);
PUSHs(sysid ? sv_2mortal(newUTF8SVpv(sysid, 0)) : &PL_sv_undef);
PUSHs(pubid ? sv_2mortal(newUTF8SVpv(pubid, 0)) : &PL_sv_undef);
PUTBACK;
call_sv(cbv->notation_sv, G_DISCARD|G_VOID);

Expand Down Expand Up @@ -1033,7 +1033,7 @@ externalEntityRef(XML_Parser parser,
append_error(parser, "Can't find parser entry in XML::Parser object");
else {
XML_Parser entpar;
char *errmsg = (char *) 0;
char *errmsg = NULL;

entpar = XML_ExternalEntityParserCreate(parser, open, 0);
if (! entpar) {
Expand Down Expand Up @@ -1228,10 +1228,10 @@ recString(void *userData, const char *string, int len)
CallbackVector *cbv = (CallbackVector*) userData;

if (cbv->recstring) {
sv_catpvn(cbv->recstring, (char *) string, len);
sv_catpvn(cbv->recstring, string, len);
}
else {
cbv->recstring = newUTF8SVpvn((char *) string, len);
cbv->recstring = newUTF8SVpvn(string, len);
}
} /* End recString */

Expand Down Expand Up @@ -1320,7 +1320,7 @@ XML_ParserCreate(self_sv, enc_sv, namespaces)
CODE:
{
CallbackVector *cbv;
char *enc = (char *) (SvTRUE(enc_sv) ? SvPV_nolen(enc_sv) : 0);
char *enc = SvTRUE(enc_sv) ? SvPV_nolen(enc_sv) : NULL;
SV ** spp;

Newxz(cbv, 1, CallbackVector);
Expand Down Expand Up @@ -1528,7 +1528,7 @@ XML_ParseStream(parser, ioref, delim)
cbv->delim = SvPV(delim, cbv->delimlen);
}
else {
cbv->delim = (char *) 0;
cbv->delim = NULL;
}

RETVAL = parse_stream(parser, ioref);
Expand Down Expand Up @@ -1873,7 +1873,7 @@ XML_SetBase(parser, base)
char * b;

if (! SvOK(base)) {
b = (char *) 0;
b = NULL;
}
else {
b = SvPV_nolen(base);
Expand Down Expand Up @@ -1951,7 +1951,7 @@ XML_PositionContext(parser, lines)
relpos = length;

EXTEND(sp, 2);
PUSHs(sv_2mortal(newSVpvn((char *) markbeg, length)));
PUSHs(sv_2mortal(newSVpvn(markbeg, length)));
PUSHs(sv_2mortal(newSViv(relpos)));

SV *
Expand Down Expand Up @@ -2252,7 +2252,7 @@ XML_OriginalString(parser)
int parsepos, size;
const char *buff = XML_GetInputContext(parser, &parsepos, &size);
if (buff) {
RETVAL = newSVpvn((char *) &buff[parsepos],
RETVAL = newSVpvn(&buff[parsepos],
XML_GetCurrentByteCount(parser));
}
else {
Expand Down
Loading