From f555c00e0b0be14cd553c7c803d6136b86f2012b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Mon, 21 Nov 2016 23:32:28 +0100 Subject: vis-lua: pass path as second argument to file_save_post event hook The passed path can be different from file.name for instance when opening a file `a` and then doing `:w b` where file.name will be the former and path the latter. --- vis-lua.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'vis-lua.c') diff --git a/vis-lua.c b/vis-lua.c index f134b83..c48eb43 100644 --- a/vis-lua.c +++ b/vis-lua.c @@ -128,7 +128,7 @@ void vis_lua_init(Vis *vis) { } void vis_lua_start(Vis *vis) { } void vis_lua_quit(Vis *vis) { } void vis_lua_file_open(Vis *vis, File *file) { } -void vis_lua_file_save_post(Vis *vis, File *file) { } +void vis_lua_file_save_post(Vis *vis, File *file, const char *path) { } void vis_lua_file_close(Vis *vis, File *file) { } void vis_lua_win_open(Vis *vis, Win *win) { } void vis_lua_win_close(Vis *vis, Win *win) { } @@ -1544,12 +1544,16 @@ void vis_lua_file_open(Vis *vis, File *file) { lua_pop(L, 1); } -void vis_lua_file_save_post(Vis *vis, File *file) { +void vis_lua_file_save_post(Vis *vis, File *file, const char *path) { lua_State *L = vis->lua; vis_lua_event_get(L, "file_save_post"); if (lua_isfunction(L, -1)) { obj_ref_new(L, file, "vis.file"); - pcall(vis, L, 1, 0); + if (path) + lua_pushstring(L, path); + else + lua_pushnil(L); + pcall(vis, L, 2, 0); } lua_pop(L, 1); } -- cgit v1.2.3