]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/tinfo/lib_termname.c
ncurses 5.9 - patch 20120826
[ncurses.git] / ncurses / tinfo / lib_termname.c
index e7057383c56598ce7e3a48f5544c945a07914ac1..e3f6827ee018cd2e225e955897323c9c3110480d 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998 Free Software Foundation, Inc.                        *
+ * Copyright (c) 1998-2003,2009 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  ****************************************************************************/
 
 #include <curses.priv.h>
-#include <tic.h>       /* for MAX_ALIAS */
 
-MODULE_ID("$Id: lib_termname.c,v 1.2 1999/07/24 21:02:40 tom Exp $")
+MODULE_ID("$Id: lib_termname.c,v 1.12 2009/10/24 21:56:58 tom Exp $")
 
-char *termname(void)
+NCURSES_EXPORT(char *)
+NCURSES_SP_NAME(termname) (NCURSES_SP_DCL0)
 {
-char   *name = getenv("TERM");
-static char    ret[MAX_ALIAS+1];
+    char *name = 0;
 
-       T(("termname() called"));
+    T((T_CALLED("termname(%p)"), (void *) SP_PARM));
 
-       if (name != 0) {
-               (void) strncpy(ret, name, sizeof(ret) - 1);
-               name = ret;
-       }
-       return name;
+#if NCURSES_SP_FUNCS
+    if (TerminalOf(SP_PARM) != 0) {
+       name = TerminalOf(SP_PARM)->_termname;
+    }
+#else
+    if (cur_term != 0)
+       name = cur_term->_termname;
+#endif
+
+    returnPtr(name);
+}
+
+#if NCURSES_SP_FUNCS
+NCURSES_EXPORT(char *)
+termname(void)
+{
+    return NCURSES_SP_NAME(termname) (CURRENT_SCREEN);
 }
+#endif