re PR java/5365 (gcjh -stubs does not include correct files)

Fix for PR java/5365:
	* gjavah.c (process_file): Turn class name into a file name.

From-SVN: r48891
This commit is contained in:
Tom Tromey 2002-01-16 00:27:05 +00:00 committed by Tom Tromey
parent acfab996f3
commit 9c874875a1
2 changed files with 16 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2002-01-15 Tom Tromey <tromey@redhat.com>
Fix for PR java/5365:
* gjavah.c (process_file): Turn class name into a file name.
2002-01-14 Matthias Klose <doko@debian.org>
* gcj.texi: Fix whitespace and formatting errors in the

View file

@ -1,7 +1,7 @@
/* Program to write C++-suitable header files from a Java(TM) .class
file. This is similar to SUN's javah.
Copyright (C) 1996, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -1969,10 +1969,18 @@ DEFUN(process_file, (jcf, out),
{
/* Strip off the ".class" portion of the name when printing
the include file name. */
int len = strlen (jcf->classname);
char *name;
int i, len = strlen (jcf->classname);
if (len > 6 && ! strcmp (&jcf->classname[len - 6], ".class"))
len -= 6;
print_include (out, jcf->classname, len);
/* Turn the class name into a file name. */
name = xmalloc (len + 1);
for (i = 0; i < len; ++i)
name[i] = jcf->classname[i] == '.' ? '/' : jcf->classname[i];
name[i] = '\0';
print_include (out, name, len);
free (name);
if (! flag_jni)
print_include (out, "gcj/cni", -1);
}