瀏覽代碼

Free up any allocated options if we fail

tags/v0.9.3
Michael Brown 18 年之前
父節點
當前提交
6a0b4c9772
共有 1 個文件被更改,包括 8 次插入0 次删除
  1. 8
    0
      src/net/udp/dhcp.c

+ 8
- 0
src/net/udp/dhcp.c 查看文件

@@ -476,6 +476,14 @@ udp_to_dhcp ( struct udp_connection *conn ) {
476 476
  * @v rc		Return status code
477 477
  */
478 478
 static void dhcp_done ( struct dhcp_session *dhcp, int rc ) {
479
+	/* Free up options if we failed */
480
+	if ( rc != 0 ) {
481
+		if ( dhcp->options ) {
482
+			free_dhcp_options ( dhcp->options );
483
+			dhcp->options = NULL;
484
+		}
485
+	}
486
+
479 487
 	/* Mark async operation as complete */
480 488
 	async_done ( &dhcp->aop, rc );
481 489
 }

Loading…
取消
儲存