Fossil

Check-in [dcbc8ba9]
Login

Check-in [dcbc8ba9]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Replaced a couple of blob_append() with blob_append_escaped_arg() so that a diff-command setting with spaces in the path will work, as discussed in forum post 29e7250723461d18. (Bug: this would include any flags to the diff-command as part of the include, which obviously won't work.)
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | mistake
Files: files | file ages | folders
SHA3-256: dcbc8ba9fcfeac89e1c72c3406d6abaaf141a9ce14f1091aef73e2d73939f798
User & Date: stephan 2021-06-17 10:32:26
Original Comment: Replaced a couple of blob_append() with blob_append_escaped_arg() so that a diff-command setting with spaces in the path will work, as discussed in forum post 29e7250723461d18.
Context
2021-06-17
10:32
Replaced a couple of blob_append() with blob_append_escaped_arg() so that a diff-command setting with spaces in the path will work, as discussed in forum post 29e7250723461d18. (Bug: this would include any flags to the diff-command as part of the include, which obviously won't work.) ... (Closed-Leaf check-in: dcbc8ba9 user: stephan tags: mistake)
02:20
/announce page: add an explicit ACTION value for the form so that a 'to=...' URL parameter does not end up shadowing the 'to' field of the form and causing the announcement to be sent to the URL-provided address even if that form field is edited. ... (check-in: 2fa43ef4 user: stephan tags: trunk)
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/diffcmd.c.

267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
    /* Construct a temporary file to hold pFile1 based on the name of
    ** zFile2 */
    file_tempname(&nameFile1, zFile2, "orig");
    blob_write_to_file(pFile1, blob_str(&nameFile1));

    /* Construct the external diff command */
    blob_zero(&cmd);
    blob_append(&cmd, zDiffCmd, -1);
    if( fSwapDiff ){
      blob_append_escaped_arg(&cmd, zFile2);
      blob_append_escaped_arg(&cmd, blob_str(&nameFile1));
    }else{
      blob_append_escaped_arg(&cmd, blob_str(&nameFile1));
      blob_append_escaped_arg(&cmd, zFile2);
    }







|







267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
    /* Construct a temporary file to hold pFile1 based on the name of
    ** zFile2 */
    file_tempname(&nameFile1, zFile2, "orig");
    blob_write_to_file(pFile1, blob_str(&nameFile1));

    /* Construct the external diff command */
    blob_zero(&cmd);
    blob_append_escaped_arg(&cmd, zDiffCmd);
    if( fSwapDiff ){
      blob_append_escaped_arg(&cmd, zFile2);
      blob_append_escaped_arg(&cmd, blob_str(&nameFile1));
    }else{
      blob_append_escaped_arg(&cmd, blob_str(&nameFile1));
      blob_append_escaped_arg(&cmd, zFile2);
    }
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
    file_tempname(&temp1, zName, "before");
    file_tempname(&temp2, zName, "after");
    blob_write_to_file(pFile1, blob_str(&temp1));
    blob_write_to_file(pFile2, blob_str(&temp2));

    /* Construct the external diff command */
    blob_zero(&cmd);
    blob_append(&cmd, zDiffCmd, -1);
    blob_append_escaped_arg(&cmd, blob_str(&temp1));
    blob_append_escaped_arg(&cmd, blob_str(&temp2));

    /* Run the external diff command */
    fossil_system(blob_str(&cmd));

    /* Delete the temporary file and clean up memory used */







|







354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
    file_tempname(&temp1, zName, "before");
    file_tempname(&temp2, zName, "after");
    blob_write_to_file(pFile1, blob_str(&temp1));
    blob_write_to_file(pFile2, blob_str(&temp2));

    /* Construct the external diff command */
    blob_zero(&cmd);
    blob_append_escaped_arg(&cmd, zDiffCmd);
    blob_append_escaped_arg(&cmd, blob_str(&temp1));
    blob_append_escaped_arg(&cmd, blob_str(&temp2));

    /* Run the external diff command */
    fossil_system(blob_str(&cmd));

    /* Delete the temporary file and clean up memory used */