* file handle pool. */
m->file_handles_allowed += io->files_handles_owned;
h2_io_set_remove(m->stream_ios, io);
+ h2_io_set_remove(m->ready_ios, io);
h2_io_destroy(io);
}
}
h2_io *io = h2_io_set_get_highest_prio(m->ready_ios);
if (io) {
h2_response *response = io->response;
+
+ AP_DEBUG_ASSERT(response);
h2_io_set_remove(m->ready_ios, io);
stream = h2_stream_set_get(streams, response->stream_id);
}
io->response = h2_response_copy(io->pool, response);
+ AP_DEBUG_ASSERT(io->response);
h2_io_set_add(m->ready_ios, io);
if (bb) {
status = out_write(m, io, f, bb, iowait);
if (!m->aborted) {
h2_io *io = h2_io_set_get(m->stream_ios, stream_id);
if (io) {
- if (!io->response->ngheader) {
+ if (!io->response || !io->response->ngheader) {
/* In case a close comes before a response was created,
* insert an error one so that our streams can properly
* reset.
* @macro
* Version number of the h2 module as c string
*/
-#define MOD_H2_VERSION "0.9.7"
+#define MOD_H2_VERSION "0.9.9"
/**
* @macro
* release. This is a 24 bit number with 8 bits for major number, 8 bits
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
*/
-#define MOD_H2_VERSION_NUM 0x000907
+#define MOD_H2_VERSION_NUM 0x000909
#endif /* mod_h2_h2_version_h */