]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib: iostream-temp - Remove support for o_stream_pwrite()
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Fri, 17 Oct 2025 10:51:13 +0000 (13:51 +0300)
committerTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 22 Oct 2025 08:21:14 +0000 (11:21 +0300)
It's not needed by anything, and it's just making the code more complex.

src/lib/iostream-temp.c

index 6e14ff5f76ebe51005082f0faefd3503989a2a74..147b1536029f969f2cb580267bfba9bdc945c48d 100644 (file)
@@ -264,29 +264,6 @@ o_stream_temp_send_istream(struct ostream_private *_outstream,
        return io_stream_copy(&outstream->ostream.ostream, instream);
 }
 
-static int
-o_stream_temp_write_at(struct ostream_private *stream,
-                      const void *data, size_t size, uoff_t offset)
-{
-       struct temp_ostream *tstream =
-               container_of(stream, struct temp_ostream, ostream);
-
-       if (tstream->fd == -1) {
-               i_assert(stream->ostream.offset == tstream->buf->used);
-               buffer_write(tstream->buf, offset, data, size);
-               stream->ostream.offset = tstream->buf->used;
-       } else {
-               if (pwrite_full(tstream->fd, data, size, offset) < 0) {
-                       stream->ostream.stream_errno = errno;
-                       i_close_fd(&tstream->fd);
-                       return -1;
-               }
-               if (tstream->fd_size < offset + size)
-                       tstream->fd_size = offset + size;
-       }
-       return 0;
-}
-
 static int o_stream_temp_seek(struct ostream_private *_stream, uoff_t offset)
 {
        _stream->ostream.offset = offset;
@@ -319,7 +296,6 @@ struct ostream *iostream_temp_create_sized(const char *temp_path_prefix,
        tstream->ostream.ostream.blocking = TRUE;
        tstream->ostream.sendv = o_stream_temp_sendv;
        tstream->ostream.send_istream = o_stream_temp_send_istream;
-       tstream->ostream.write_at = o_stream_temp_write_at;
        tstream->ostream.seek = o_stream_temp_seek;
        tstream->ostream.iostream.close = o_stream_temp_close;
        tstream->temp_path_prefix = i_strdup(temp_path_prefix);