Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/nic/ar9271/wmi.c

    r2298fc4 r3bacee1  
    230230        size_t buffer_size = header_size + command_length;
    231231        void *buffer = malloc(buffer_size);
    232         if (buffer == NULL) {
    233                 usb_log_error("Failed to allocate WMI message buffer (out of memory).\n");
    234                 return ENOMEM;
    235         }
    236232
    237233        if (command_buffer != NULL)
     
    245241            host2uint16_t_be(++htc_device->sequence_number);
    246242
    247         /* Send message (buffer will not be needed afterwards regardless of result). */
     243        /* Send message. */
    248244        errno_t rc = htc_send_control_message(htc_device, buffer, buffer_size,
    249245            htc_device->endpoints.wmi_endpoint);
     246        if (rc != EOK) {
     247                free(buffer);
     248                usb_log_error("Failed to send WMI message. Error: %s\n", str_error_name(rc));
     249                return rc;
     250        }
     251
    250252        free(buffer);
    251         if (rc != EOK) {
    252                 usb_log_error("Failed to send WMI message. Error: %s\n", str_error_name(rc));
    253                 return rc;
    254         }
    255253
    256254        bool clean_resp_buffer = false;
     
    269267                    response_buffer_size, NULL);
    270268                if (rc != EOK) {
     269                        free(buffer);
    271270                        usb_log_error("Failed to receive WMI message response. "
    272271                            "Error: %s\n", str_error_name(rc));
     
    276275                if (response_buffer_size < sizeof(htc_frame_header_t) +
    277276                    sizeof(wmi_command_header_t)) {
     277                        free(buffer);
    278278                        usb_log_error("Corrupted response received.\n");
    279279                        return EINVAL;
Note: See TracChangeset for help on using the changeset viewer.