summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2014-11-08 19:40:23 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2014-11-09 00:06:55 +0000
commit998f9b499088d8cfb1c06000212468ee780aaca7 (patch)
tree07f5a86a0c0eab99f02dfe8e98203067801ca173
parent3c1aeebb1e0b50793831969d69656914e05f9a80 (diff)
downloadnetsurf-998f9b499088d8cfb1c06000212468ee780aaca7.tar.gz
netsurf-998f9b499088d8cfb1c06000212468ee780aaca7.tar.bz2
Use macros for clarity
-rw-r--r--amiga/libs.c29
-rw-r--r--amiga/misc.h1
2 files changed, 17 insertions, 13 deletions
diff --git a/amiga/libs.c b/amiga/libs.c
index 25169ab84..0a818eba8 100644
--- a/amiga/libs.c
+++ b/amiga/libs.c
@@ -17,27 +17,30 @@
*/
#include "amiga/libs.h"
+#include "amiga/misc.h"
#include <proto/exec.h>
-void ami_libs_open(void)
-{
- if((KeymapBase = OpenLibrary("keymap.library",37))) {
- IKeymap = (struct KeymapIFace *)GetInterface(KeymapBase, "main", 1, NULL);
+#define AMINS_OPEN_LIB(LIB, LIBVER, SUFFIX, INTERFACE, INTVER) \
+ if((SUFFIX##Base = OpenLibrary(LIB, LIBVER))) { \
+ I##SUFFIX = (struct SUFFIX##IFace *)GetInterface(SUFFIX##Base, INTERFACE, INTVER, NULL); \
+ } else { \
+ warn_user("CompError", LIB); \
}
- if((ApplicationBase = OpenLibrary("application.library", 53))) {
- IApplication = (struct ApplicationIFace *)GetInterface(ApplicationBase, "application", 2, NULL);
- }
+#define AMINS_CLOSE_LIB(SUFFIX) \
+ if(I##SUFFIX) DropInterface((struct Interface *)I##SUFFIX); \
+ if(SUFFIX##Base) CloseLibrary(SUFFIX##Base);
+
+void ami_libs_open(void)
+{
+ AMINS_OPEN_LIB("keymap.library", 37, Keymap, "main", 1)
+ AMINS_OPEN_LIB("application.library", 53, Application, "application", 2)
}
void ami_libs_close(void)
{
-
- if(IApplication) DropInterface((struct Interface *)IApplication);
- if(ApplicationBase) CloseLibrary(ApplicationBase);
-
- if(IKeymap) DropInterface((struct Interface *)IKeymap);
- if(KeymapBase) CloseLibrary(KeymapBase);
+ AMINS_CLOSE_LIB(Application)
+ AMINS_CLOSE_LIB(Keymap)
}
diff --git a/amiga/misc.h b/amiga/misc.h
index ce2d94793..9adbb7352 100644
--- a/amiga/misc.h
+++ b/amiga/misc.h
@@ -18,6 +18,7 @@
#ifndef AMIGA_MISC_H
#define AMIGA_MISC_H
+#include <exec/types.h>
extern struct gui_file_table *amiga_file_table;