qinguoyi / TinyWebServer

:fire: Linux下C++轻量级WebServer服务器
Apache License 2.0
15.85k stars 3.81k forks source link

添加cmake,并发现 http_conn::write中更新m_iv[0].iov_len的逻辑不对——raw_version分支 #186

Open ning2510 opened 1 year ago

ning2510 commented 1 year ago

1. 添加 CMakeLists.txt

添加 cmake,解决 #64 ,需把 main.c 改为 main.cpp

2. 修改逻辑问题

问题所在 这里减的是 m_iv[0].iov_len - bytes_have_send,应该是 m_write_idx - bytes_have_send,说一下原因:

m_write_idx 第一个 iovec 的头部信息数据长度,而且 m_write_idx 在循环发送的过程中是不会改变的,同时也应该改上面的 if 语句的 m_iv[0].iov_len 也改为 m_write_idx