Fossil

Check-in [bee9b30168]
Login

Check-in [bee9b30168]

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

Overview
Comment:Fix the previous commit to restore ANSI C-89 conformance.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: bee9b3016870835e9c5769a00af609d1ef6d860da0bb0a381b6f627d6d50755b
User & Date: florian 2024-12-18 18:40:00
Context
2024-12-19
07:28
Fix a small inconvenience in the `translate' utility program discovered while working with MSVC debug builds. ... (check-in: 8defefd3ff user: florian tags: trunk)
2024-12-18
18:40
Fix the previous commit to restore ANSI C-89 conformance. ... (check-in: bee9b30168 user: florian tags: trunk)
18:30
Fix a problem introduced with [593ceca27d]: the blob resize operation may realloc the buffer, so obtain the pointer to the buffer only after the resize to avoid a "use after free". ... (check-in: 36bcaaeee0 user: florian tags: trunk)
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/printf.c.

848
849
850
851
852
853
854

855
856
857
858
859
860
861
862
863
        length = width = 0;
        break;
      }
      case etHEX: {
        char *zArg = va_arg(ap, char*);
        int szArg = (int)strlen(zArg);
        int szBlob = blob_size(pBlob);

        blob_resize(pBlob, szBlob+szArg*2+1);
        u8 *aBuf = (u8*)&blob_buffer(pBlob)[szBlob];
        encode16((const u8*)zArg, aBuf, szArg);
        length = width = 0;
        break;
      }
      case etERROR:
        buf[0] = '%';
        buf[1] = c;







>

|







848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
        length = width = 0;
        break;
      }
      case etHEX: {
        char *zArg = va_arg(ap, char*);
        int szArg = (int)strlen(zArg);
        int szBlob = blob_size(pBlob);
        u8 *aBuf;
        blob_resize(pBlob, szBlob+szArg*2+1);
        aBuf = (u8*)&blob_buffer(pBlob)[szBlob];
        encode16((const u8*)zArg, aBuf, szArg);
        length = width = 0;
        break;
      }
      case etERROR:
        buf[0] = '%';
        buf[1] = c;