data.devices_status = STATUS_QUIT;
}
-void naive_escape (const char *cpath_real, char *cpath_escaped)
+void naive_replace (char *s, const u8 key_char, const u8 replace_char)
{
- const size_t len = MIN (strlen (cpath_real), 1024);
+ const size_t len = strlen (s);
+
+ for (size_t in = 0; in < len; in++)
+ {
+ const u8 c = s[in];
+
+ if (c == key_char)
+ {
+ s[in] = replace_char;
+ }
+ }
+}
+
+void naive_escape (char *s, size_t s_max, const u8 key_char, const u8 escape_char)
+{
+ char s_escaped[1024] = { 0 };
+
+ size_t s_escaped_max = sizeof (s_escaped);
+
+ const size_t len = strlen (s);
for (size_t in = 0, out = 0; in < len; in++, out++)
{
- const u8 c = cpath_real[in];
+ const u8 c = s[in];
- if (c == ' ')
+ if (c == key_char)
{
- #if _WIN
- cpath_escaped[out] = '^';
- #else
- cpath_escaped[out] = '\\';
- #endif
+ s_escaped[out] = escape_char;
out++;
}
- cpath_escaped[out] = c;
+ if (out == s_escaped_max - 2) break;
+
+ s_escaped[out] = c;
}
+
+ strncpy (s, s_escaped, s_max - 1);
}
void load_kernel (const char *kernel_file, int num_devices, size_t *kernel_lengths, const u8 **kernel_sources)
void *thread_keypress (void *p)
{
- int benchmark = *((int *) p);
-
uint quiet = data.quiet;
tty_break();
log_info ("");
- if (benchmark == 1) break;
-
stop_at_checkpoint ();
log_info ("");
log_info ("");
- if (benchmark == 1)
- {
- myquit ();
- }
- else
- {
- myabort ();
- }
+ myabort ();
break;
}