diff options
author | rubenwardy <rw@rubenwardy.com> | 2018-12-26 12:47:32 +0000 |
---|---|---|
committer | rubenwardy <rw@rubenwardy.com> | 2018-12-26 12:47:32 +0000 |
commit | f12d374956c6227a073fc955c398757f9a7166bd (patch) | |
tree | 3998b377be02a419add033fc08a650a05646c694 | |
parent | a5197eaebc61ac6b555a640f36c0b427faef381d (diff) | |
download | minetest-f12d374956c6227a073fc955c398757f9a7166bd.tar.gz minetest-f12d374956c6227a073fc955c398757f9a7166bd.tar.bz2 minetest-f12d374956c6227a073fc955c398757f9a7166bd.zip |
Content store: Fix bugs relating to packages list size
-rw-r--r-- | builtin/mainmenu/dlg_contentstore.lua | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/builtin/mainmenu/dlg_contentstore.lua b/builtin/mainmenu/dlg_contentstore.lua index 48856f228..6490e67f1 100644 --- a/builtin/mainmenu/dlg_contentstore.lua +++ b/builtin/mainmenu/dlg_contentstore.lua @@ -285,7 +285,7 @@ function store.load() local file = io.open(target, "r") if file then - store.packages_full = core.parse_json(file:read("*all")) + store.packages_full = core.parse_json(file:read("*all")) or {} file:close() for _, package in pairs(store.packages_full) do @@ -385,7 +385,7 @@ function store.get_formspec() end local formspec - if #store.packages > 0 then + if #store.packages_full > 0 then formspec = { "size[12,7;true]", "position[0.5,0.55]", @@ -426,6 +426,12 @@ function store.get_formspec() } end + if #store.packages == 0 then + formspec[#formspec + 1] = "label[4,3;" + formspec[#formspec + 1] = fgettext("No results") + formspec[#formspec + 1] = "]" + end + local start_idx = (cur_page - 1) * num_per_page + 1 for i=start_idx, math.min(#store.packages, start_idx+num_per_page-1) do local package = store.packages[i] @@ -570,7 +576,7 @@ function store.handle_submit(this, fields, tabname, tabdata) end function create_store_dlg(type) - if not store.loaded then + if not store.loaded or #store.packages_full == 0 then store.load() end |