This is a live mirror of the Perl 5 development currently hosted at
https://github.com/perl/perl5
https://perl5.git.perl.org
/
perl5.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge smoke informations to testsuite workflow
[perl5.git]
/
perl.c
diff --git
a/perl.c
b/perl.c
index
6d1fff3
..
2013a76
100644
(file)
--- a/
perl.c
+++ b/
perl.c
@@
-96,6
+96,7
@@
S_init_tls_and_interp(PerlInterpreter *my_perl)
HINTS_REFCNT_INIT;
LOCALE_INIT;
USER_PROP_MUTEX_INIT;
HINTS_REFCNT_INIT;
LOCALE_INIT;
USER_PROP_MUTEX_INIT;
+ ENV_INIT;
MUTEX_INIT(&PL_dollarzero_mutex);
MUTEX_INIT(&PL_my_ctx_mutex);
# endif
MUTEX_INIT(&PL_dollarzero_mutex);
MUTEX_INIT(&PL_my_ctx_mutex);
# endif
@@
-1197,6
+1198,8
@@
perl_destruct(pTHXx)
PL_UpperLatin1 = NULL;
SvREFCNT_dec(PL_in_some_fold);
PL_in_some_fold = NULL;
PL_UpperLatin1 = NULL;
SvREFCNT_dec(PL_in_some_fold);
PL_in_some_fold = NULL;
+ SvREFCNT_dec(PL_utf8_foldclosures);
+ PL_utf8_foldclosures = NULL;
SvREFCNT_dec(PL_utf8_idcont);
PL_utf8_idcont = NULL;
SvREFCNT_dec(PL_utf8_idstart);
SvREFCNT_dec(PL_utf8_idcont);
PL_utf8_idcont = NULL;
SvREFCNT_dec(PL_utf8_idstart);
@@
-1244,9
+1247,7
@@
perl_destruct(pTHXx)
}
}
}
}
- if (!specialWARN(PL_compiling.cop_warnings))
- PerlMemShared_free(PL_compiling.cop_warnings);
- PL_compiling.cop_warnings = NULL;
+ free_and_set_cop_warnings(&PL_compiling, NULL);
cophh_free(CopHINTHASH_get(&PL_compiling));
CopHINTHASH_set(&PL_compiling, cophh_new_empty());
CopFILE_free(&PL_compiling);
cophh_free(CopHINTHASH_get(&PL_compiling));
CopHINTHASH_set(&PL_compiling, cophh_new_empty());
CopFILE_free(&PL_compiling);
@@
-2282,10
+2283,6
@@
S_parse_body(pTHX_ char **env, XSINIT_t xsinit)
#endif
(s = PerlEnv_getenv("PERL5OPT")))
{
#endif
(s = PerlEnv_getenv("PERL5OPT")))
{
- /* s points to static memory in getenv(), which may be overwritten at
- * any time; use a mortal copy instead */
- s = SvPVX(sv_2mortal(newSVpv(s, 0)));
-
while (isSPACE(*s))
s++;
if (*s == '-' && *(s+1) == 'T') {
while (isSPACE(*s))
s++;
if (*s == '-' && *(s+1) == 'T') {
@@
-3743,16
+3740,12
@@
Perl_moreswitches(pTHX_ const char *s)
return s;
case 'W':
PL_dowarn = G_WARN_ALL_ON|G_WARN_ON;
return s;
case 'W':
PL_dowarn = G_WARN_ALL_ON|G_WARN_ON;
- if (!specialWARN(PL_compiling.cop_warnings))
- PerlMemShared_free(PL_compiling.cop_warnings);
- PL_compiling.cop_warnings = pWARN_ALL ;
+ free_and_set_cop_warnings(&PL_compiling, pWARN_ALL);
s++;
return s;
case 'X':
PL_dowarn = G_WARN_ALL_OFF;
s++;
return s;
case 'X':
PL_dowarn = G_WARN_ALL_OFF;
- if (!specialWARN(PL_compiling.cop_warnings))
- PerlMemShared_free(PL_compiling.cop_warnings);
- PL_compiling.cop_warnings = pWARN_NONE ;
+ free_and_set_cop_warnings(&PL_compiling, pWARN_NONE);
s++;
return s;
case '*':
s++;
return s;
case '*':
@@
-5252,7
+5245,7
@@
Perl_my_failure_exit(pTHX)
* success/warning codes to fatal with out changing
* the POSIX status code. The severity makes VMS native
* status handling work, while UNIX mode programs use the
* success/warning codes to fatal with out changing
* the POSIX status code. The severity makes VMS native
* status handling work, while UNIX mode programs use the
- *
the
POSIX exit codes.
+ * POSIX exit codes.
*/
if ((STATUS_NATIVE & (STS$K_SEVERE|STS$K_ERROR)) == 0) {
STATUS_NATIVE &= STS$M_COND_ID;
*/
if ((STATUS_NATIVE & (STS$K_SEVERE|STS$K_ERROR)) == 0) {
STATUS_NATIVE &= STS$M_COND_ID;