]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/base/lib_newwin.c
ncurses 5.5
[ncurses.git] / ncurses / base / lib_newwin.c
index aa8959ca3243385af71e5559967bfeff261f48aa..c0980ad589934fbb5fa311ab7f784dabc59a6c04 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2001,2002 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2004,2005 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            *
@@ -29,6 +29,7 @@
 /****************************************************************************
  *  Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995               *
  *     and: Eric S. Raymond <esr@snark.thyrsus.com>                         *
+ *     and: Thomas E. Dickey                        1996-on                 *
  ****************************************************************************/
 
 /*
@@ -40,7 +41,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_newwin.c,v 1.34 2002/08/18 00:12:30 tom Exp $")
+MODULE_ID("$Id: lib_newwin.c,v 1.36 2005/04/09 15:23:04 tom Exp $")
 
 static WINDOW *
 remove_window_from_screen(WINDOW *win)
@@ -120,9 +121,6 @@ newwin(int num_lines, int num_columns, int begy, int begx)
     if (num_columns == 0)
        num_columns = screen_columns - begx;
 
-    if (num_columns + begx > SP->_columns || num_lines + begy > SP->_lines_avail)
-       returnWin(0);
-
     if ((win = _nc_makenew(num_lines, num_columns, begy, begx, 0)) == 0)
        returnWin(0);
 
@@ -212,6 +210,9 @@ _nc_makenew(int num_lines, int num_columns, int begy, int begx, int flags)
 
     T(("_nc_makenew(%d,%d,%d,%d)", num_lines, num_columns, begy, begx));
 
+    if (SP == 0)
+       return 0;
+
     if (!dimension_limit(num_lines) || !dimension_limit(num_columns))
        return 0;