celerizer
33d8031593
RetroAchievements leaderboard strings
2017-11-09 20:19:57 -06:00
celerizer
7e7363305b
RetroAchievements leaderboard strings
2017-11-09 20:16:47 -06:00
celerizer
dcfcfe8d70
RetroAchievements leaderboard strings
2017-11-09 20:10:06 -06:00
celerizer
5976f34805
RetroAchievements leaderboard strings
2017-11-09 20:07:36 -06:00
rz5
0d7f9c7cf0
(xmb) De-hardcode the size of 'tabs' array
...
As per @bparker06's recommendation.
First element of the enum is forced to be zero, so we can add a tail to the enum that we can use to query its max length.
2017-11-06 20:20:14 +00:00
Twinaphex
5136ec2df0
Updates
2017-11-06 05:37:32 +01:00
rz5
82de482b9f
(xmb) Fixed array index out of bounds
...
Caught by asan:
menu/drivers/xmb.c:3491:16: runtime error: index 8 out of bounds for type 'uint8_t [8]'
menu/drivers/xmb.c:1149:23: runtime error: index 8 out of bounds for type 'uint8_t [8]'
2017-11-06 01:06:13 +00:00
Jean-André Santoni
4e463123af
(Lakka) Flag some advanced settings
2017-11-04 11:27:31 +07:00
celerizer
bf50bd1df3
sublabels for new RA features
2017-10-31 01:19:55 -05:00
celerizer
e41c79daed
Add files via upload
2017-10-31 01:18:53 -05:00
Brad Parker
598285b461
add missing include for lakka
2017-10-30 17:08:54 -04:00
Brad Parker
68a8198e4a
convert more file IO functions to use filestream, fixes encoding issues on Windows
2017-10-29 12:08:24 -04:00
Jean-André Santoni
77cd18e6bc
Remove obsolete SD_FLAG_LAKKA_ADVANCED
2017-10-26 18:38:12 +07:00
Jean-André Santoni
94309a65cf
Remove obsolete HAVE_LAKKA ifdefs
2017-10-26 17:58:41 +07:00
twinaphex
bb051f185b
MSVC/C89 buildfixes
2017-10-22 05:13:22 +02:00
Jean-André Santoni
dc7b1c122b
Hide savestates in the quickmenu if hardcore achievements are enabled. Fixes libretro/Lakka-LibreELEC#192
2017-10-21 19:12:00 +07:00
Jean-André Santoni
63ba8be296
(Menu) Reset the navigation pointer when closing content
2017-10-21 18:55:00 +07:00
twinaphex
e9708be756
Prevent Coverity warning
2017-10-19 23:02:18 +02:00
twinaphex
8464ad30bd
(Xbox 360) Buildfixes
2017-10-16 01:33:17 +02:00
Twinaphex
e86e237ed7
Merge pull request #5552 from bparker06/win32_file_encoding
...
win32: support local multibyte encoding for file paths
2017-10-15 13:07:18 +02:00
Brad Parker
338723bc31
fix some null pointer accesses with empty strings
2017-10-15 00:39:55 -04:00
Brad Parker
a7c8cc88e5
win32: support local multibyte encoding for file paths
2017-10-14 23:13:24 -04:00
Brad Parker
ee7590868a
add option to remove frame count from FPS display
2017-10-13 20:35:55 -04:00
Brad Parker
256bde3478
add menu settings for OSD text color
2017-10-12 14:26:17 -04:00
Twinaphex
01f8e4e74f
Merge pull request #5539 from Brunnis/master
...
XMB: Fix playlist entry graphic update issue when all system tabs except Main Menu are disabled
2017-10-12 14:08:38 +02:00
Twinaphex
81a5b6c2c2
Merge pull request #5535 from RobLoach/fix/RobLoach/remove-GL_SCISSOR_TEST
...
Fix background rendering when resizing window
2017-10-12 10:02:25 +02:00
Brunnis
a87cf6d2e7
Fix issue in XMB where playlist entry graphic wouldn't update when scrolling through the first playlist tab, if all system tabs except the Main Menu tab were disabled.
2017-10-12 09:49:59 +02:00
radius
840e772b16
move scissor test to nuklear driver exclusively
2017-10-11 22:48:13 -05:00
Rob Loach
1b856f7a1e
Fix background rendering
...
Removes the use of GL_SCISSOR_TEST in the GL display driver.
Fixes #5534
2017-10-11 21:30:57 -04:00
Twinaphex
cadc4f56a3
Merge pull request #5530 from lucianposton/fix-compilation
...
Fix build by removing settings var from ifdef
2017-10-11 17:29:13 +02:00
Brunnis
cc3d2b0084
Merge branch 'master' into kiosk-mode-setting
2017-10-11 11:40:05 +02:00
Brunnis
39619d1245
Implemented new Kiosk Mode setting which hides all configuration related settings/tabs in XMB.
2017-10-11 11:30:53 +02:00
Lucian Poston
69a18324c0
Remove settings from ifdef
2017-10-11 02:12:21 -07:00
radius
5ccdc8811c
update nuklear.h
...
fix window clipping
remove dead code
2017-10-10 18:08:53 -05:00
Brad Parker
a4bc1c9768
add menu options for OSD background color
2017-10-10 14:53:32 -04:00
Brunnis
b1a6753976
Merge branch 'master' into quick-menu-show-hide-options
2017-10-09 12:05:04 +02:00
Mikael Brunnhede
c7da6e1ca8
Fix issue with "Information" option being hidden when launching content.
2017-10-09 11:21:10 +02:00
Mikael Brunnhede
1053a4e38f
Implemented setting for showing/hiding the "Information" option in the Quick Menu.
2017-10-09 11:16:04 +02:00
Mikael Brunnhede
6f8201d398
Implemented setting for showing/hiding the "Save Game Overrides" option in the Quick Menu.
2017-10-09 10:53:58 +02:00
Mikael Brunnhede
3f1dd895da
Implemented setting for showing/hiding the "Save Core Overrides" option in the Quick Menu.
2017-10-09 10:44:37 +02:00
Mikael Brunnhede
b7654dac7e
Implemented setting for showing/hiding the "Shaders" option in the Quick Menu.
2017-10-09 10:30:25 +02:00
Mikael Brunnhede
a64683ba34
Implemented setting for showing/hiding the "Cheats" option in the Quick Menu.
2017-10-09 10:17:15 +02:00
Mikael Brunnhede
d5a802e4a8
Implemented setting for showing/hiding the "Controls" option in the Quick Menu.
2017-10-09 10:05:32 +02:00
Mikael Brunnhede
d25916cacf
Implemented setting for showing/hiding the "Options" option in the Quick Menu.
2017-10-09 09:56:27 +02:00
Mikael Brunnhede
9356c326e0
Implemented setting for showing/hiding the "Add to Favorites" option in the Quick Menu.
2017-10-09 09:46:42 +02:00
Mikael Brunnhede
db0e0f443a
Implemented setting for showing/hiding the options for undoing save/load state in the Quick Menu.
2017-10-09 09:30:53 +02:00
Mikael Brunnhede
b402b4a6cd
Implemented setting for showing/hiding the save/load state related options in the Quick Menu.
2017-10-09 09:13:00 +02:00
Mikael Brunnhede
e286c5dda2
Implemented new settings menu view: User Interface -> Views -> Quick Menu.
...
Implemented setting for showing/hiding the "Take Screenshot" option in the Quick Menu.
2017-10-09 08:14:52 +02:00
Twinaphex
ed061fd27b
Merge pull request #5516 from Brunnis/main-menu-show-hide-options
...
New settings for showing/hiding Main Menu tab options in XMB
2017-10-07 17:03:34 +02:00
Mikael Brunnhede
84701efd24
Don't hide option for showing/hiding "Online Updater" on Lakka.
2017-10-07 13:50:31 +02:00
Mikael Brunnhede
83991d6c36
Implemented setting for showing/hiding the "Reboot" option in XMB. The setting is only shown on Lakka.
2017-10-06 09:40:41 +02:00
Mikael Brunnhede
9db0e9dbc6
Implemented setting for showing/hiding the "Quit RetroArch" option in XMB. The setting is only shown on Lakka.
2017-10-06 09:27:42 +02:00
Mikael Brunnhede
f073d5167a
Implemented setting for showing/hiding the "Help" option in XMB.
2017-10-06 08:28:45 +02:00
Mikael Brunnhede
7ee1797fa1
Implemented setting for showing/hiding the "Configurations" option in XMB.
2017-10-06 08:18:39 +02:00
Mikael Brunnhede
19b313c221
Implemented setting for showing/hiding the "Information" option in XMB.
2017-10-05 14:30:15 +02:00
twinaphex
1e3da091a5
Get rid of some hashes
2017-10-05 11:44:11 +02:00
Mikael Brunnhede
0eb5566dea
Implemented setting for showing/hiding the "Load Content" option in XMB.
2017-10-05 09:26:25 +02:00
Mikael Brunnhede
cc3b64f951
Implemented setting for showing/hiding the "Load Core" option in XMB.
2017-10-05 09:14:05 +02:00
twinaphex
856fccd65c
Update
2017-10-05 05:27:43 +02:00
twinaphex
489acabdf4
Update
2017-10-05 05:26:46 +02:00
twinaphex
9829019306
Update
2017-10-05 05:23:54 +02:00
twinaphex
032109512a
Fix more Coverity errors
2017-10-04 08:37:21 +02:00
twinaphex
bb6ca3e4ff
Fix playlists in non-horizontal mode
2017-10-04 08:26:41 +02:00
twinaphex
1763a2ef7b
Rename menu_displaylist_parse_history to menu_displaylist_parse_generic
2017-10-04 07:22:06 +02:00
twinaphex
8238545bef
Cleanups
2017-10-04 06:53:47 +02:00
twinaphex
6bb5af8ee0
Cleanups
2017-10-04 06:36:23 +02:00
twinaphex
9cdea532ce
Fix typo
2017-10-04 06:34:53 +02:00
Twinaphex
59ec089c2e
Merge pull request #5505 from heuripedes/master
...
Fix crash when navigating immediately after disabling horizontal animations
2017-10-04 02:21:26 +02:00
Higor Eurípedes
fca48021aa
(xmb) Fix whitespace
2017-10-03 21:16:11 -03:00
Higor Eurípedes
6ed9f28656
(xmb) Set selection_ptr_old to zero when animations are off
2017-10-03 21:15:35 -03:00
Higor Eurípedes
f59470c523
Do not try to find a setting for database entries
2017-10-03 20:31:08 -03:00
twinaphex
3b8559dafc
Prevent null pointer dereference
2017-10-04 00:16:38 +02:00
Twinaphex
e3ef431b79
Merge pull request #5501 from Brunnis/master
...
Don't show "Enable Settings Tab" option in RGUI
2017-10-03 11:36:12 +02:00
Mikael Brunnhede
46ed23e649
Don't show "Enable Settings Tab" option in RGUI.
2017-10-03 09:12:05 +02:00
twinaphex
79908ec8d4
Cleanups
2017-10-03 05:34:05 +02:00
twinaphex
d0d6d0bfe8
Prevent null pointer dereference here too
2017-10-03 04:26:34 +02:00
twinaphex
02ee7df743
Do a NULL check
2017-10-03 04:25:31 +02:00
twinaphex
71dd8f9084
Silence more warnings
2017-10-03 00:56:18 +02:00
twinaphex
702f1276d6
Silence warnings
2017-10-03 00:53:09 +02:00
Alcaro
c91c4ff9c0
Nuke some more ifdefs and warnings
2017-10-03 00:35:41 +02:00
Alcaro
dc4c2cd6d9
Wipe out a buncha warnings and pointless ifdefs (some warnings will remain until #5497 is fixed)
2017-10-03 00:26:29 +02:00
Twinaphex
9c89b3e546
Merge pull request #5496 from Brunnis/master
...
Add setting for showing/hiding the ability to rename playlist items
2017-10-02 22:37:50 +02:00
twinaphex
bb2702ef2f
(Xbox) Some buildfixes
2017-10-02 22:35:06 +02:00
Mikael Brunnhede
af7df0cba3
Add setting for showing/hiding the ability to rename playlist items.
2017-10-02 22:17:44 +02:00
twinaphex
721afe22d8
(MSVC 2010) Compile griffin.c as C
2017-10-02 22:06:32 +02:00
twinaphex
cdb24aff1c
(RGUI) Silence warning
2017-10-02 20:33:46 +02:00
twinaphex
0db3aec722
Convert menu_display_d3d.cpp to C
2017-10-02 19:04:49 +02:00
twinaphex
bceb8000dd
Use replacement D3DXMatrix functions
2017-10-02 19:01:23 +02:00
twinaphex
8d850dc0bd
CXX_BUILD fixes
2017-10-02 07:07:18 +02:00
Hans-Kristian Arntzen
43b4c65b1e
Fix crash in MaterialUI on reinit.
...
Can't cache pointers. Cache the index instead.
2017-10-01 20:00:20 +02:00
twinaphex
cc988cf559
Trying to prevent Coverity error
2017-10-01 18:28:07 +02:00
twinaphex
1d960e0c42
Try to silence Coverity error
2017-10-01 18:23:40 +02:00
twinaphex
710c70f838
Remove another wrapper function
2017-10-01 17:43:38 +02:00
twinaphex
2b55e5858e
Remove menu_entries_get_actiondata_at_offset
2017-10-01 17:25:41 +02:00
twinaphex
df15a67c71
Remove menu_entries_get_last
2017-10-01 17:20:01 +02:00
twinaphex
e66ef15580
Remove another useless wrapper function
2017-10-01 17:17:53 +02:00
twinaphex
a87bef6ed0
Remove useless wrapper function
2017-10-01 17:11:09 +02:00
twinaphex
3cac2a6df8
(MUI) Fix memory leak
2017-10-01 16:51:09 +02:00
Brad Parker
a11d04f252
xmb: check that node exists before dereferencing it
2017-10-01 02:08:41 -04:00
twinaphex
849538b15c
(MUI) Do texture unload before loading the new wallpaper
2017-09-30 20:03:51 +02:00
twinaphex
455b202142
Fix another Coverity error
2017-09-30 17:09:52 +02:00
twinaphex
b46f2ba35f
Fix Coverity error
2017-09-30 17:05:26 +02:00
twinaphex
4dd6c7fac7
Fix crash
2017-09-30 16:55:50 +02:00
twinaphex
2a8b74eeb9
Fix some Coverity errors
2017-09-30 16:52:41 +02:00
twinaphex
98ddc80035
Remove unused menu_entries_get
2017-09-30 16:42:42 +02:00
twinaphex
b0de197da4
Memset this variable
2017-09-30 07:43:37 +02:00
twinaphex
e376bd75c0
Fix crash with savestate thumbnails
2017-09-30 07:10:58 +02:00
twinaphex
638a441530
(XMB) Be safer
2017-09-30 06:40:54 +02:00
twinaphex
1156d6cec5
Simplify conditionals
2017-09-30 06:18:38 +02:00
twinaphex
eea7fe2dce
Cleanup materialui.c
2017-09-30 06:13:24 +02:00
twinaphex
94fdf314f2
Cleanup conditionals
2017-09-30 06:11:18 +02:00
twinaphex
d6b385d0b8
Try to be more safe
2017-09-30 05:08:11 +02:00
Twinaphex
fc79569682
(MaterialUI) Fix memory leak
2017-09-29 21:38:27 +02:00
twinaphex
4fd00ac146
Be safer with this
2017-09-29 21:22:01 +02:00
Twinaphex
66de49c987
Fix memory leaks and crashes
2017-09-29 21:19:07 +02:00
twinaphex
01099d526c
Fix the other leaks in menu_entry_get
2017-09-29 21:10:03 +02:00
twinaphex
3551ac825c
Rewrite rich label allocation
2017-09-29 21:05:23 +02:00
twinaphex
f398f44253
Rewrite xmb_draw_item
2017-09-29 21:00:56 +02:00
twinaphex
238de4aa57
Prevent memory leak
2017-09-29 20:56:54 +02:00
twinaphex
3090f3ff3a
(task_database.c) Rewrite char arrays
2017-09-29 20:47:54 +02:00
twinaphex
4db14dca9a
(RGUI) Rewrite msgbox
2017-09-29 20:01:00 +02:00
twinaphex
5da54b6f88
(MUI) Rewrite box_message
2017-09-29 19:59:19 +02:00
twinaphex
7f80ecbe93
(XMB) xmb_free - prevent memory leaks
2017-09-29 19:57:23 +02:00
twinaphex
8e01424450
Refactor and rewrite big char arrays
2017-09-29 19:55:06 +02:00
twinaphex
4639b2547d
Rewrite another function
2017-09-29 19:09:11 +02:00
twinaphex
1c477ca007
Rewrite menu_entry_get_sublabel
2017-09-29 18:52:15 +02:00
twinaphex
efde859e17
Rewrite menu_entry_get_rich_label
2017-09-29 18:46:53 +02:00
twinaphex
9c90f97792
No longer use menu_entry_alloc
2017-09-29 18:37:04 +02:00
twinaphex
08f9e4aaf9
Refactor menu_entry
2017-09-29 18:22:11 +02:00
twinaphex
05d5def6c2
Simplify xmb_draw_item
2017-09-29 18:12:17 +02:00
twinaphex
9b279ca968
(XDK360) Buildfix
2017-09-29 18:03:29 +02:00
twinaphex
51d98ef0c0
(XMB) Reduce stack usage
2017-09-29 16:54:57 +02:00
twinaphex
476f7e560b
Reorder some struct members
2017-09-29 16:49:41 +02:00
twinaphex
8bf741257c
(XMB) Reduce stack usage
2017-09-29 16:47:30 +02:00
twinaphex
dc11a02e61
Cleanup
2017-09-29 16:34:20 +02:00
twinaphex
b2932d5270
Split up function into two - create xmb_draw_item
2017-09-29 16:32:30 +02:00
twinaphex
5379b12e7c
FIx some new Coverity errors
2017-09-29 05:39:06 +02:00
twinaphex
642818d59c
Make sanitize_to_string safer
2017-09-29 05:26:48 +02:00
twinaphex
15bb8e2ebe
Fix setting directories
2017-09-29 05:23:33 +02:00
twinaphex
6dcbf0eab8
(menu_list.c) Use malloc
2017-09-29 04:49:59 +02:00
twinaphex
7d12eb4a51
(WASAPI) Compiles now as C++ as well as C
2017-09-28 18:47:33 +02:00
twinaphex
97f821e743
Fix crash when selecting 'Scan Directory'
2017-09-28 16:29:45 +02:00
twinaphex
65edb2f06c
Update
2017-09-28 08:55:40 +02:00
twinaphex
9185fb3ed1
(RGUI) Cleanups
2017-09-28 08:51:28 +02:00
twinaphex
f444ef109f
(MUI) Reorder variables
2017-09-28 08:45:42 +02:00
twinaphex
270f35753a
reorder XMB variables
2017-09-28 08:42:12 +02:00
twinaphex
dfe6035ade
Put menu_entry_t on heap inside xmb_draw_items
2017-09-28 07:26:43 +02:00
twinaphex
f914a91944
Use menu_entry_get_type_new
2017-09-28 07:15:29 +02:00
twinaphex
decea56c03
Rewrite menu_entry_get_path
2017-09-28 06:51:48 +02:00
twinaphex
7adf4ca854
Simplify menu_entry_get_spacing
2017-09-28 06:44:04 +02:00
twinaphex
76277a12b0
Rewrite menu_entry_get_label
2017-09-28 06:40:15 +02:00
twinaphex
db7e1a4fdf
Simplify menu_entry_get_sublabel
2017-09-28 06:37:48 +02:00
twinaphex
b8e900cd32
Rewrite menu_entry_get_value
2017-09-28 06:32:49 +02:00
twinaphex
c5255b1bff
Simplify menu_entry_get_rich_label
2017-09-28 06:19:34 +02:00
twinaphex
2f10fd14d6
Create menu_entry_init/menu_entry_free
2017-09-28 06:02:14 +02:00
twinaphex
bb6e4a6633
xmb_draw_items - small cleanups
2017-09-28 05:37:19 +02:00
twinaphex
a616fa16f3
Small cleanups
2017-09-28 05:00:22 +02:00
twinaphex
7633141bd6
Try to prevent potential memory leak
2017-09-28 03:53:48 +02:00
twinaphex
e1a0139164
Cleanups
2017-09-28 03:48:49 +02:00
twinaphex
8af2559b2a
Be similarly careful in other functions
2017-09-28 03:39:35 +02:00
twinaphex
8b62a7cb7d
Fix crash that could occur upon loading content
2017-09-28 03:37:29 +02:00
Twinaphex
04bc2fef8c
Fix more memory leaks
2017-09-28 03:28:05 +02:00
twinaphex
b28536ba16
Fix leaks in menu_displaylist_push
2017-09-28 03:22:42 +02:00
twinaphex
59e442419e
Fix some leaks
2017-09-28 03:16:00 +02:00
twinaphex
8b5f8d8c64
menu_displaylist_info - rewrite path
2017-09-28 03:06:54 +02:00
twinaphex
08ecfc74ec
Rewrite info.label
2017-09-28 02:45:03 +02:00
twinaphex
72087d1749
Rewrite path_b and path_c
2017-09-28 02:30:31 +02:00
twinaphex
72f42b602f
menu_displaylist_info - reduce stack usage - exts no longer
...
a fixed size path
2017-09-28 01:38:05 +02:00
twinaphex
67ff372a38
Reorder from lowest to highest sized variables
2017-09-28 00:50:03 +02:00
twinaphex
4a133144d5
Get rid of Coverity warning
2017-09-28 00:45:40 +02:00
Twinaphex
8ec326a43f
Merge pull request #5479 from Brunnis/master
...
Add XMB menu option to show the Settings tab if it has previously been hidden
2017-09-26 16:51:50 +02:00
Mikael Brunnhede
a1e9027fe2
Added XMB menu option to show the Settings tab if it has previously been hidden.
2017-09-26 14:41:07 +02:00
radius
5b388a0e81
show RetroPad buttons instead of keyboard keys when controls are not autoconfigured
2017-09-25 23:23:25 -05:00
radius
bb7243a412
fix offset, add a couple comments
2017-09-20 22:50:28 -05:00
twinaphex
770640be58
Fix more dereference before NULL checks
2017-09-18 16:40:38 +02:00
twinaphex
fa7a792180
Fix dereference before NULL check
2017-09-18 16:39:28 +02:00
twinaphex
60c7f8e35f
Fix 'pointer to local outside scope'
2017-09-18 16:35:31 +02:00
twinaphex
c90307c585
Buildfix
2017-09-18 16:22:27 +02:00
twinaphex
e931bad7d1
Cleanups
2017-09-18 16:18:25 +02:00
twinaphex
49cf80db10
Fix resource leaks
2017-09-18 15:57:05 +02:00
Brian Koropoff
1bbb7aff08
menu_displaylist: don't crash on serial-only database entries
2017-09-17 21:31:42 -07:00
twinaphex
88b593e4af
(360) Builds again(360) Builds again(360) Builds again(360) Builds
...
again(360) Builds again(360) Builds again(360) Builds again(360) Builds
again(360) Builds again
2017-09-13 04:33:43 +02:00
twinaphex
170b368044
(360) Some buildfixes
2017-09-13 04:21:00 +02:00
twinaphex
07148293a5
(Xbox) Some buildfixes
2017-09-13 03:18:31 +02:00
Twinaphex
d43b18b26d
Merge pull request #5433 from fr500/master
...
use descriptors if available
2017-09-12 07:27:42 +02:00
radius
21d55fa626
use descriptors if available
2017-09-12 00:12:33 -05:00
Andrés
583a74c0e4
Merge pull request #5432 from fr500/master
...
input remapping cleanups
2017-09-11 23:07:42 -05:00
radius
6a561f6414
input remapping cleanups
2017-09-11 22:49:39 -05:00
twinaphex
466df258d8
Fix use after free
2017-09-12 05:09:56 +02:00
twinaphex
2d4cd1bd0e
Fix resource leak
2017-09-12 05:08:56 +02:00
twinaphex
a532ef3cea
(XMB) Prevent memory leak
2017-09-12 04:47:37 +02:00
twinaphex
a25f9d291e
(XMB) Reduce stack usage
2017-09-12 04:37:58 +02:00
radius
529afd8451
osx buildfixes
2017-09-11 00:21:48 -05:00
radius
f1f4d629ad
don't show the keymapper labels when not required
2017-09-11 00:21:48 -05:00
radius
551d85630e
android build fixes
2017-09-11 00:21:48 -05:00
radius
9abbf47a8d
fix defaults
2017-09-11 00:21:47 -05:00
radius
3c9651ace0
fix wrapping
2017-09-11 00:21:46 -05:00
radius
c8752ec630
add left/right callbacks
2017-09-11 00:21:46 -05:00
radius
b93417fbed
start implementing keymapper gui
2017-09-11 00:21:46 -05:00
twinaphex
0af92cc92e
Reduce stack usage
2017-09-11 06:31:44 +02:00