Make BufFileWrite() void.
authorThomas Munro <tmunro@postgresql.org>
Tue, 16 Jun 2020 05:23:36 +0000 (17:23 +1200)
committerThomas Munro <tmunro@postgresql.org>
Tue, 16 Jun 2020 05:33:04 +0000 (17:33 +1200)
It now either returns after it wrote all the data you gave it, or raises
an error.  Not done in back-branches, because it might cause problems
for external code.

Discussion: https://postgr.es/m/CA%2BhUKGJE04G%3D8TLK0DLypT_27D9dR8F1RQgNp0jK6qR0tZGWOw%40mail.gmail.com

src/backend/storage/file/buffile.c
src/include/storage/buffile.h

index 298b10b543ac909b80d211b70ed37f6afd814aa2..b402f064bbf701450d51d73e299a984881fabc5e 100644 (file)
@@ -578,7 +578,7 @@ BufFileRead(BufFile *file, void *ptr, size_t size)
  * Like fwrite() except we assume 1-byte element size and report errors via
  * ereport().
  */
-size_t
+void
 BufFileWrite(BufFile *file, void *ptr, size_t size)
 {
    size_t      nwritten = 0;
@@ -617,8 +617,6 @@ BufFileWrite(BufFile *file, void *ptr, size_t size)
        size -= nthistime;
        nwritten += nthistime;
    }
-
-   return nwritten;
 }
 
 /*
index 60433f35b45494142339d8f7229dcc5d4d33cb1f..f4752bab0da5a7ddee3c1b52b6a6120585d42cca 100644 (file)
@@ -39,7 +39,7 @@ typedef struct BufFile BufFile;
 extern BufFile *BufFileCreateTemp(bool interXact);
 extern void BufFileClose(BufFile *file);
 extern size_t BufFileRead(BufFile *file, void *ptr, size_t size);
-extern size_t BufFileWrite(BufFile *file, void *ptr, size_t size);
+extern void BufFileWrite(BufFile *file, void *ptr, size_t size);
 extern int BufFileSeek(BufFile *file, int fileno, off_t offset, int whence);
 extern void BufFileTell(BufFile *file, int *fileno, off_t *offset);
 extern int BufFileSeekBlock(BufFile *file, long blknum);