summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles/misc.c
diff options
context:
space:
mode:
authorFranklin Wei <git@fwei.tk>2017-04-29 18:21:56 -0400
committerFranklin Wei <git@fwei.tk>2017-04-29 18:24:42 -0400
commit881746789a489fad85aae8317555f73dbe261556 (patch)
treecec2946362c4698c8db3c10f3242ef546c2c22dd /apps/plugins/puzzles/misc.c
parent03dd4b92be7dcd5c8ab06da3810887060e06abd5 (diff)
downloadrockbox-881746789a489fad85aae8317555f73dbe261556.zip
rockbox-881746789a489fad85aae8317555f73dbe261556.tar.gz
rockbox-881746789a489fad85aae8317555f73dbe261556.tar.bz2
rockbox-881746789a489fad85aae8317555f73dbe261556.tar.xz
puzzles: refactor and resync with upstream
This brings puzzles up-to-date with upstream revision 2d333750272c3967cfd5cd3677572cddeaad5932, though certain changes made by me, including cursor-only Untangle and some compilation fixes remain. Upstream code has been moved to its separate subdirectory and future syncs can be done by simply copying over the new sources. Change-Id: Ia6506ca5f78c3627165ea6791d38db414ace0804
Diffstat (limited to '')
-rw-r--r--apps/plugins/puzzles/src/misc.c (renamed from apps/plugins/puzzles/misc.c)19
1 files changed, 16 insertions, 3 deletions
diff --git a/apps/plugins/puzzles/misc.c b/apps/plugins/puzzles/src/misc.c
index cd5c393..c721016 100644
--- a/apps/plugins/puzzles/misc.c
+++ b/apps/plugins/puzzles/src/misc.c
@@ -2,7 +2,7 @@
* misc.c: Miscellaneous helpful functions.
*/
-#include "rbassert.h"
+#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
@@ -201,7 +201,7 @@ void game_mkhighlight(frontend *fe, float *ret,
game_mkhighlight_specific(fe, ret, background, highlight, lowlight);
}
-static void memswap_puzzles(void *av, void *bv, int size)
+static void memswap(void *av, void *bv, int size)
{
char tmpbuf[512];
char *a = av, *b = bv;
@@ -225,7 +225,7 @@ void shuffle(void *array, int nelts, int eltsize, random_state *rs)
for (i = nelts; i-- > 1 ;) {
int j = random_upto(rs, i+1);
if (j != i)
- memswap_puzzles(carray + eltsize * i, carray + eltsize * j, eltsize);
+ memswap(carray + eltsize * i, carray + eltsize * j, eltsize);
}
}
@@ -358,6 +358,19 @@ void draw_text_outline(drawing *dr, int x, int y, int fonttype,
draw_text(dr, x, y+1, fonttype, fontsize, align, outline_colour, text);
}
draw_text(dr, x, y, fonttype, fontsize, align, text_colour, text);
+
+}
+
+/* kludge for non-compliant sprintf() */
+void copy_left_justified(char *buf, size_t sz, const char *str)
+{
+ memset(buf, ' ', sz - 1);
+ int len = strlen(str);
+ if(len <= sz - 1)
+ memcpy(buf, str, len);
+ else
+ fatal("overrun");
+ buf[sz - 1] = 0;
}
/* vim: set shiftwidth=4 tabstop=8: */