Memory leak in config_assign_value()
After legacy/trac#9644, we have at startup: ``` ==17900== 720 (80 direct, 640 indirect) bytes in 5 blocks are definitely lost in loss record 20 of 23 ==17900== at 0x4C2C5DB: malloc (vg_replace_malloc.c:270) ==17900== by 0x229F47: tor_malloc_ (util.c:144) ==17900== by 0x21E6AE: smartlist_new (container.c:34) ==17900== by 0x1BD5E9: config_assign_value (confparse.c:384) ==17900== by 0x1BDC90: config_reset (confparse.c:928) ==17900== by 0x1BF18E: config_init (confparse.c:1049) ==17900== by 0x1BB54F: options_init_from_string (config.c:4026) ==17900== by 0x1BBB7A: options_init_from_torrc (config.c:3987) ==17900== by 0x11FB51: tor_init (main.c:2413) ==17900== by 0x120BEB: tor_main (main.c:2853) ==17900== by 0x622460C: (below main) (libc-start.c:226) ==17900== ==17900== 720 (80 direct, 640 indirect) bytes in 5 blocks are definitely lost in loss record 21 of 23 ==17900== at 0x4C2C5DB: malloc (vg_replace_malloc.c:270) ==17900== by 0x229F47: tor_malloc_ (util.c:144) ==17900== by 0x21E6AE: smartlist_new (container.c:34) ==17900== by 0x1BD5E9: config_assign_value (confparse.c:384) ==17900== by 0x1BE7F0: config_assign (confparse.c:529) ==17900== by 0x1BF022: config_dup (confparse.c:1025) ==17900== by 0x1BB88E: options_init_from_string (config.c:4047) ==17900== by 0x1BBB7A: options_init_from_torrc (config.c:3987) ==17900== by 0x11FB51: tor_init (main.c:2413) ==17900== by 0x120BEB: tor_main (main.c:2853) ==17900== by 0x622460C: (below main) (libc-start.c:226) ```
issue