summaryrefslogtreecommitdiffstats
path: root/fitsy/alloc.C
diff options
context:
space:
mode:
Diffstat (limited to 'fitsy/alloc.C')
-rw-r--r--fitsy/alloc.C25
1 files changed, 25 insertions, 0 deletions
diff --git a/fitsy/alloc.C b/fitsy/alloc.C
new file mode 100644
index 0000000..508a0ec
--- /dev/null
+++ b/fitsy/alloc.C
@@ -0,0 +1,25 @@
+// Copyright (C) 1999-2018
+// Smithsonian Astrophysical Observatory, Cambridge, MA, USA
+// For conditions of distribution and use, see copyright notice in "copyright"
+
+#include <stdio.h>
+#include "alloc.h"
+
+FitsAlloc::FitsAlloc(const char* fn)
+{
+ parse(fn);
+ if (!valid_)
+ return;
+
+ // we need the 'b' for windows...
+ if (!strncmp(pName_, "stdin", 5) ||
+ !strncmp(pName_, "STDIN", 5) ||
+ !strncmp(pName_, "-", 1))
+ stream_ = fdopen(dup(fileno(stdin)), "rb");
+ else
+ stream_ = fopen(pName_, "rb");
+
+ valid_ = stream_ ? 1 : 0;
+}
+
+