Index: /trunk/psLib/src/astro/psCoord.c
===================================================================
--- /trunk/psLib/src/astro/psCoord.c	(revision 12734)
+++ /trunk/psLib/src/astro/psCoord.c	(revision 12735)
@@ -10,6 +10,6 @@
 *  @author GLG, MHPCC
 *
-*  @version $Revision: 1.136 $ $Name: not supported by cvs2svn $
-*  @date $Date: 2007-03-18 22:00:09 $
+*  @version $Revision: 1.137 $ $Name: not supported by cvs2svn $
+*  @date $Date: 2007-04-04 19:46:28 $
 *
 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -1198,6 +1198,7 @@
 }
 
-char * psProjectTypeToString (psProjectionType type, char *prefix)
-{
+psString psProjectTypeToString(psProjectionType type, const char *prefix)
+{
+    PS_ASSERT_STRING_NON_EMPTY(prefix, NULL);
 
     char *name = NULL;
@@ -1242,5 +1243,5 @@
 
     default:
-        psLogMsg ("psLib.astrom", 2, "warning: unknown projection type %d\n", type);
+        psError(PS_ERR_BAD_PARAMETER_VALUE, true, "Unknown projection type: %d\n", type);
         return NULL;
     }
@@ -1248,32 +1249,22 @@
 }
 
-psProjectionType psProjectTypeFromString (char *name)
-{
-
-    psProjectionType type = PS_PROJ_NTYPE;
-    if (!strcmp (&name[4], "-LIN"))
-        type = PS_PROJ_LIN;
-    if (!strcmp (&name[4], "-PLY"))
-        type = PS_PROJ_PLY;
-    if (!strcmp (&name[4], "-WRP"))
-        type = PS_PROJ_WRP;
-    if (!strcmp (&name[4], "-TAN"))
-        type = PS_PROJ_TAN;
-    if (!strcmp (&name[4], "-DIS"))
-        type = PS_PROJ_DIS;
-    if (!strcmp (&name[4], "-SIN"))
-        type = PS_PROJ_SIN;
-    if (!strcmp (&name[4], "-STG"))
-        type = PS_PROJ_STG;
-    if (!strcmp (&name[4], "-AIT"))
-        type = PS_PROJ_AIT;
-    if (!strcmp (&name[4], "-PAR"))
-        type = PS_PROJ_PAR;
-    if (!strcmp (&name[4], "-GLS"))
-        type = PS_PROJ_GLS;
-    if (!strcmp (&name[4], "-CAR"))
-        type = PS_PROJ_CAR;
-    if (!strcmp (&name[4], "-MER"))
-        type = PS_PROJ_MER;
-    return type;
-}
+psProjectionType psProjectTypeFromString(const char *name)
+{
+    PS_ASSERT_STRING_NON_EMPTY(name, PS_PROJ_NONE);
+
+    if (!strcmp (&name[4], "-LIN")) return PS_PROJ_LIN;
+    if (!strcmp (&name[4], "-PLY")) return PS_PROJ_PLY;
+    if (!strcmp (&name[4], "-WRP")) return PS_PROJ_WRP;
+    if (!strcmp (&name[4], "-TAN")) return PS_PROJ_TAN;
+    if (!strcmp (&name[4], "-DIS")) return PS_PROJ_DIS;
+    if (!strcmp (&name[4], "-SIN")) return PS_PROJ_SIN;
+    if (!strcmp (&name[4], "-STG")) return PS_PROJ_STG;
+    if (!strcmp (&name[4], "-AIT")) return PS_PROJ_AIT;
+    if (!strcmp (&name[4], "-PAR")) return PS_PROJ_PAR;
+    if (!strcmp (&name[4], "-GLS")) return PS_PROJ_GLS;
+    if (!strcmp (&name[4], "-CAR")) return PS_PROJ_CAR;
+    if (!strcmp (&name[4], "-MER")) return PS_PROJ_MER;
+
+    psError(PS_ERR_BAD_PARAMETER_VALUE, true, "Unrecognised projection type: %s", name);
+    return PS_PROJ_NONE;
+}
Index: /trunk/psLib/src/astro/psCoord.h
===================================================================
--- /trunk/psLib/src/astro/psCoord.h	(revision 12734)
+++ /trunk/psLib/src/astro/psCoord.h	(revision 12735)
@@ -8,6 +8,6 @@
  *  @author GLG, MHPCC
  *
- *  @version $Revision: 1.57 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-02-06 21:36:09 $
+ *  @version $Revision: 1.58 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-04-04 19:46:28 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -119,4 +119,5 @@
  */
 typedef enum {
+    PS_PROJ_NONE,                      ///< No projection
     PS_PROJ_LIN,                       ///< Linear projection
     PS_PROJ_PLY,                       ///< Linear polynomial projection
@@ -442,6 +443,6 @@
 );
 
-char * psProjectTypeToString (psProjectionType type, char *prefix);
-psProjectionType psProjectTypeFromString (char *name);
+psString psProjectTypeToString(psProjectionType type, const char *prefix);
+psProjectionType psProjectTypeFromString(const char *name);
 
 
