~ubuntu-branches/debian/wheezy/eperl/wheezy

« back to all changes in this revision

Viewing changes to eperl_perl5.c

  • Committer: Bazaar Package Importer
  • Author(s): Denis Barbier
  • Date: 2001-12-18 20:40:24 UTC
  • Revision ID: james.westby@ubuntu.com-20011218204024-k0oaqq2eaw733v30
Tags: 2.2.14-4
* Remove emacs crap from debian/changelog
* Fix misspelling in debian/copyright

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
**
16
16
**  ======================================================================
17
17
**
18
 
**  Copyright (c) 1996,1997,1998 Ralf S. Engelschall <rse@engelschall.com>
 
18
**  Copyright (c) 1996,1997,1998,1999 Ralf S. Engelschall <rse@engelschall.com>
19
19
**
20
20
**  This program is free software; it may be redistributed and/or modified
21
21
**  only under the terms of either the Artistic License or the GNU General
41
41
 
42
42
#ifdef HAVE_PERL_DYNALOADER
43
43
 
44
 
extern void boot_DynaLoader _((CV* cv));
 
44
extern void boot_DynaLoader _((pTHX_ CV* cv));
45
45
 
46
46
/*
47
47
**
48
48
**  the Perl XS init function for dynamic library loading
49
49
**
50
50
*/
51
 
void Perl5_XSInit(void)
 
51
void Perl5_XSInit(pTHX)
52
52
{
53
53
   char *file = __FILE__;
54
54
   /* dXSUB_SYS; */
64
64
**  Force Perl to use unbuffered I/O
65
65
**
66
66
*/
67
 
void Perl5_ForceUnbufferedStdout(void)
 
67
void Perl5_ForceUnbufferedStdout(pTHX)
68
68
{
69
 
#if AC_perl_vnum < 500476
70
 
    IoFLAGS(GvIOp(defoutgv)) |= IOf_FLUSH; /* $|=1 */
71
 
#else
 
69
    dTHR;
72
70
    IoFLAGS(GvIOp(PL_defoutgv)) |= IOf_FLUSH; /* $|=1 */
73
 
#endif
74
71
    return;
75
72
}
76
73
 
84
81
    char ca[1024];
85
82
    char *cp;
86
83
 
87
 
    strcpy(ca, str);
 
84
    strncpy(ca, str, 1023);
 
85
    ca[1023] = NUL;
88
86
    cp = strchr(ca, '=');
89
 
    *cp++ = '\0';
 
87
    if (cp != NULL)
 
88
        *cp++ = '\0';
 
89
    else
 
90
        cp = "";
90
91
    return mysetenv(env, ca, cp);
91
92
}
92
93
 
95
96
**  sets a Perl scalar variable
96
97
**
97
98
*/
98
 
void Perl5_SetScalar(char *pname, char *vname, char *vvalue)
 
99
void Perl5_SetScalar(pTHX_ char *pname, char *vname, char *vvalue)
99
100
{
 
101
    dTHR;
100
102
    ENTER;
101
 
    save_hptr(&curstash); 
102
 
    curstash = gv_stashpv(pname, TRUE);
 
103
    save_hptr(&PL_curstash); 
 
104
    PL_curstash = gv_stashpv(pname, TRUE);
103
105
    sv_setpv(perl_get_sv(vname, TRUE), vvalue);
104
106
    LEAVE;
105
107
    return;
131
133
    return;
132
134
}
133
135
 
134
 
void Perl5_SetRememberedScalars(void) 
 
136
void Perl5_SetRememberedScalars(pTHX) 
135
137
{
136
138
    char ca[1024];
137
139
    char *cp;
138
140
    int i;
139
141
 
140
142
    for (i = 0; Perl5_RememberedScalars[i] != NULL; i++) {
141
 
        strcpy(ca, Perl5_RememberedScalars[i]);
 
143
        strncpy(ca, Perl5_RememberedScalars[i], 1023);
 
144
        ca[1023] = NUL;
142
145
        cp = strchr(ca, '=');
143
 
        *cp++ = '\0';
144
 
        Perl5_SetScalar("main", ca, cp);
 
146
        if (cp != NULL)
 
147
            *cp++ = '\0';
 
148
        else
 
149
            cp = "";
 
150
        Perl5_SetScalar(aTHX_ "main", ca, cp);
145
151
    }
146
152
}
147
153