Apply patch: ncpfs-hg-commit-431.patch

This commit is contained in:
Mario Fetka
2026-04-28 20:56:03 +02:00
parent b417a518c5
commit 4d94ea705a
96 changed files with 3398 additions and 431 deletions

View File

@@ -146,49 +146,44 @@ init_queue(struct ncp_conn *conn, char *queue_name, char *command,
}
static char*
add_string(char* target, char* target_end, const char *str) {
size_t len = strlen(str);
if (target + len + 1 > target_end) {
len = target_end - target - 1;
}
memcpy(target, str, len);
return target + len;
}
static void
build_command(struct nw_queue *q, struct queue_job *j,
char *target, int target_size, char *user)
char *target, size_t target_size, char *user)
{
char *s = q->command;
char *target_end = target + target_size;
static void add_string(const char *str)
{
int len = strlen(str);
if (target + len + 1 > target_end)
{
len = target_end - target - 1;
}
strncpy(target, str, len);
target += len;
}
memset(target, 0, target_size);
while ((*s != 0) && (target < target_end))
{
if (*s != '%')
{
*target = *s;
target += 1;
s += 1;
if (*s != '%') {
*target++ = *s++;
continue;
}
switch (*(s + 1))
{
switch (*(s + 1)) {
case '%':
*target = '%';
target += 1;
*target++ = '%';
break;
case 'u':
add_string(user);
target = add_string(target, target_end, user);
break;
case 'd':
if (j->j.JobTextDescription[0])
add_string(j->j.JobTextDescription);
target = add_string(target, target_end, j->j.JobTextDescription);
else
add_string(_("No Description"));
target = add_string(target, target_end, _("No Description"));
break;
default:
*target = '%';