Index: trunk/src/lua/lua_area.cc
===================================================================
--- trunk/src/lua/lua_area.cc	(revision 520)
+++ trunk/src/lua/lua_area.cc	(revision 529)
@@ -285,5 +285,5 @@
 {
 	nv::rectangle* a = to_parea( L, 1 );
-	push_coord( L, a->ul - a->lr + nv::ivec2(1,1) );
+	push_coord( L, a->lr - a->ul + nv::ivec2(1,1) );
 	return 1;
 }
Index: trunk/src/lua/lua_math.cc
===================================================================
--- trunk/src/lua/lua_math.cc	(revision 520)
+++ trunk/src/lua/lua_math.cc	(revision 529)
@@ -138,4 +138,11 @@
 
 template< typename T >
+int nlua_vec_sign( lua_State* L )
+{
+	push_vec<T>( L, nv::math::sign( to_vec<T>( L, 1 ) ) );
+	return 1;
+}
+
+template< typename T >
 int nlua_vec_call( lua_State* L )
 {
@@ -324,4 +331,5 @@
 	static const struct luaL_Reg nlua_vec_f [] = {
 		{ "clone",          nlua_vec_clone<T> },
+		{ "sign",           nlua_vec_sign<T> },
 		{ "get",            nlua_vec_get<T> },
 		{ "tostring",       nlua_vec_tostring<T> },
