7181c0af889a0eee451b91ff0b23d67f35e0e772 braney Tue Aug 18 08:39:08 2026 -0700 cheapcgi, customTrack, hgSession, hgPhyloPlace: track in-memory uploads in a registry Uploaded file contents are handed to the reading code as a text address and size. Collect that bookkeeping in cheapcgi, which now records each block it makes and hands back a name for it, and have the custom track, session and phyloPlace upload paths look the block up by that name. Also removes the duplicated address/size parsing those callers each had, and makes lineFileDecompressMem ignore a too-small buffer. refs #38108 diff --git src/inc/cheapcgi.h src/inc/cheapcgi.h index 30db46edd9d..d0f3124b87f 100644 --- src/inc/cheapcgi.h +++ src/inc/cheapcgi.h @@ -84,30 +84,42 @@ /* set handler for various terminal signals for logging purposes. * if dumpStack is TRUE, attempt to dump the stack. */ struct cgiVar /* Info on one cgi variable. */ { struct cgiVar *next; /* Next in list. */ char *name; /* Name - allocated in hash. */ char *val; /* Value - also not allocated here. */ boolean saved; /* True if saved. */ }; struct cgiVar* cgiVarList(); /* return the list of cgiVar's */ +char *cgiMemBlobRegister(char *mem, unsigned long size); +/* Record a block of memory that may be named by address in a cgi or cart + * variable, and return the "