| 574 | #ifdef ACL_WINDOWS |
| 575 | |
| 576 | void http_service::win32_proc(HWND hWnd, UINT nMsg, WPARAM wParam, LPARAM lParam) |
| 577 | { |
| 578 | if (lParam == 0) { |
| 579 | return; |
| 580 | } |
| 581 | |
| 582 | HTTP_IPC_DAT* dat = (HTTP_IPC_DAT*) lParam; |
| 583 | |
| 584 | switch (nMsg - WM_USER) { |
| 585 | case HTTP_MSG_HDR: |
| 586 | dat->callback->on_hdr(dat->i_addr, dat->i_hdr_res); |
| 587 | acl_myfree(dat); |
| 588 | break; |
| 589 | case HTTP_MSG_DAT: |
| 590 | dat->callback->on_body(dat->i_ptr, dat->i_dlen); |
| 591 | if (dat->i_ptr && dat->i_dlen > 0) { |
| 592 | acl_myfree(dat->i_ptr); |
| 593 | } else { |
| 594 | // ���������������ٹ��� |
| 595 | dat->callback->destroy(); |
| 596 | if (dat->i_hdr_res) { |
| 597 | http_hdr_res_free(dat->i_hdr_res); |
| 598 | } |
| 599 | } |
| 600 | acl_myfree(dat); |
| 601 | break; |
| 602 | case HTTP_MSG_ERR: |
| 603 | dat->callback->on_error(dat->i_error); |
| 604 | // ���������������ٹ��� |
| 605 | dat->callback->destroy(); |
| 606 | if (dat->i_hdr_res) { |
| 607 | http_hdr_res_free(dat->i_hdr_res); |
| 608 | } |
| 609 | acl_myfree(dat); |
| 610 | break; |
| 611 | default: |
| 612 | // �������쳣��Ϣ |
| 613 | logger_error("unknown ipc msg: %d", nMsg); |
| 614 | break; |
| 615 | } |
| 616 | } |
| 617 | |
| 618 | #endif |
| 619 |
nothing calls this directly
no test coverage detected