summaryrefslogtreecommitdiff
path: root/deb.c
diff options
context:
space:
mode:
Diffstat (limited to 'deb.c')
-rw-r--r--deb.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/deb.c b/deb.c
index 1d3de4c5ef..37d7a7c102 100644
--- a/deb.c
+++ b/deb.c
@@ -57,10 +57,15 @@ Perl_vdeb(pTHX_ const char *pat, va_list *args)
{
#ifdef DEBUGGING
dVAR;
- const char* const file = OutCopFILE(PL_curcop);
-
- PerlIO_printf(Perl_debug_log, "(%s:%ld)\t", (file ? file : "<free>"),
- (long)CopLINE(PL_curcop));
+ const char* const file = PL_curcop ? OutCopFILE(PL_curcop) : "<null>";
+ const char* const display_file = file ? file : "<free>";
+ const long line = PL_curcop ? (long)CopLINE(PL_curcop) : 0;
+
+ if (DEBUG_v_TEST)
+ PerlIO_printf(Perl_debug_log, "(%ld:%s:%ld)\t",
+ (long)PerlProc_getpid(), display_file, line);
+ else
+ PerlIO_printf(Perl_debug_log, "(%s:%ld)\t", display_file, line);
(void) PerlIO_vprintf(Perl_debug_log, pat, *args);
#else
PERL_UNUSED_CONTEXT;