aboutsummaryrefslogtreecommitdiffstats
path: root/launcher/jli_util.c
diff options
context:
space:
mode:
authorAndrew John Hughes <[email protected]>2010-12-15 00:54:34 +0000
committerAndrew John Hughes <[email protected]>2010-12-15 00:54:34 +0000
commit1a459d905ea2d925df771508f17d05fa5f259225 (patch)
treedd05fa1679ee341ce3ecc0918149dafea4be3f47 /launcher/jli_util.c
parent41bd2f399b754a0cba5dd64ce5f32191cfe9ea38 (diff)
Remove dependency on libjli so we can work with IcedTea7.
2010-12-14 Andrew John Hughes <[email protected]> * Makefile.am: (LAUNCHER_OBJECTS): Add jli_util.o, parse_manifest.o, version_comp.o, wildcard.o. (LAUNCEHR_FLAGS): Add -DEXPAND_CLASSPATH_WILDCARDS as used in build of libjli in OpenJDK. (LAUNCHER_LINK): Don't link to libjli. * launcher/jli_util.c, * launcher/parse_manifest.c, * launcher/version_comp.c, * launcher/wildcard.c: Add source files from OpenJDK6 to match header files already used.
Diffstat (limited to 'launcher/jli_util.c')
-rw-r--r--launcher/jli_util.c83
1 files changed, 83 insertions, 0 deletions
diff --git a/launcher/jli_util.c b/launcher/jli_util.c
new file mode 100644
index 0000000..6b64e65
--- /dev/null
+++ b/launcher/jli_util.c
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include "jli_util.h"
+
+/*
+ * Returns a pointer to a block of at least 'size' bytes of memory.
+ * Prints error message and exits if the memory could not be allocated.
+ */
+void *
+JLI_MemAlloc(size_t size)
+{
+ void *p = malloc(size);
+ if (p == 0) {
+ perror("malloc");
+ exit(1);
+ }
+ return p;
+}
+
+/*
+ * Equivalent to realloc(size).
+ * Prints error message and exits if the memory could not be reallocated.
+ */
+void *
+JLI_MemRealloc(void *ptr, size_t size)
+{
+ void *p = realloc(ptr, size);
+ if (p == 0) {
+ perror("realloc");
+ exit(1);
+ }
+ return p;
+}
+
+/*
+ * Wrapper over strdup(3C) which prints an error message and exits if memory
+ * could not be allocated.
+ */
+char *
+JLI_StringDup(const char *s1)
+{
+ char *s = strdup(s1);
+ if (s == NULL) {
+ perror("strdup");
+ exit(1);
+ }
+ return s;
+}
+
+/*
+ * Very equivalent to free(ptr).
+ * Here to maintain pairing with the above routines.
+ */
+void
+JLI_MemFree(void *ptr)
+{
+ free(ptr);
+}