aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/jcf-parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java/jcf-parse.c')
-rw-r--r--gcc/java/jcf-parse.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c
index 46e096d..f04b9f9 100644
--- a/gcc/java/jcf-parse.c
+++ b/gcc/java/jcf-parse.c
@@ -151,9 +151,11 @@ set_source_filename (JCF *jcf, int index)
char *dot = strrchr (class_name, '.');
if (dot != NULL)
{
- int i = dot - class_name;
+ int i = dot - class_name + 1;
/* Concatenate current package prefix with new sfname. */
char *buf = xmalloc (i+new_len+3);
+ memcpy (buf, class_name, i);
+ strcpy (buf + i, sfname);
/* Replace '.' by DIR_SEPARATOR. */
for (; i >= 0; i--)
{