/****************************************************************************
- * Copyright (c) 2007 Free Software Foundation, Inc. *
+ * Copyright (c) 2007-2008,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>
-MODULE_ID("$Id: use_screen.c,v 1.2 2007/09/08 21:46:48 tom Exp $")
+MODULE_ID("$Id: use_screen.c,v 1.8 2009/10/24 22:40:20 tom Exp $")
NCURSES_EXPORT(int)
-use_screen(SCREEN *screen, NCURSES_CALLBACK func, void *data)
+use_screen(SCREEN *screen, NCURSES_SCREEN_CB func, void *data)
{
SCREEN *save_SP;
int code = OK;
- T((T_CALLED("use_screen(%p,%p,%p)"), screen, func, data));
+ T((T_CALLED("use_screen(%p,%p,%p)"), (void *) screen, func, (void *) data));
/*
* FIXME - add a flag so a given thread can check if _it_ has already
* recurred through this point, return an error if so.
*/
- _nc_lock_global(use_screen);
- save_SP = SP;
+ _nc_lock_global(curses);
+ save_SP = CURRENT_SCREEN;
set_term(screen);
- code = func(screen->_stdscr, data);
+ code = func(screen, data);
set_term(save_SP);
- _nc_unlock_global(use_screen);
+ _nc_unlock_global(curses);
returnCode(code);
-
- return 0;
}