Ronald S. Bultje
6c12293f6c
matroska: don't overwrite string values until read/alloc was succesful.
...
This prevents certain tags with a default value assigned to them (as per
the EBML syntax elements) from ever being assigned a NULL value. Other
parts of the code rely on these being non-NULL (i.e. they don't check for
NULL before e.g. using the string in strcmp() or similar), and thus in
effect this prevents crashes when reading of such specific tags fails,
either because of low memory or because of targeted file corruption.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
(cherry picked from commit cd40c31ee9 )
Signed-off-by: Anton Khirnov <anton@khirnov.net >
Signed-off-by: Reinhard Tartler <siretart@tauware.de >
2012-04-01 18:33:26 +02:00
..
2012-03-18 17:50:40 +01:00
2011-03-19 13:33:20 +00:00
2011-06-10 18:41:04 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-09-26 19:26:28 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-04-03 22:46:40 +02:00
2011-04-23 00:27:10 +03:00
2011-03-21 21:31:34 +01:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-09-26 19:26:32 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-06-16 20:24:56 +02:00
2011-05-12 11:41:59 +02:00
2011-03-19 13:33:20 +00:00
2011-04-15 18:02:05 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-04-06 14:10:08 +02:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:47:05 +02:00
2011-03-19 13:33:20 +00:00
2011-11-19 10:22:27 +01:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-16 20:24:56 +02:00
2011-06-08 07:43:45 +02:00
2011-05-21 13:48:10 +02:00
2011-05-17 23:01:42 +02:00
2011-07-03 19:49:53 +02:00
2011-05-21 13:42:50 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2012-03-18 17:50:40 +01:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-05-27 08:31:16 +02:00
2011-03-19 13:33:20 +00:00
2011-04-08 11:08:26 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 23:41:53 +03:00
2011-03-19 13:33:20 +00:00
2011-04-09 17:32:09 -07:00
2011-03-28 16:55:03 +02:00
2011-05-27 08:31:16 +02:00
2011-05-27 08:31:16 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-14 13:56:09 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-08 20:58:19 +02:00
2011-06-10 19:12:14 +02:00
2011-03-19 13:33:20 +00:00
2011-05-21 13:48:10 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-05-04 21:12:42 +02:00
2011-04-03 22:46:40 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-04-18 18:23:16 +02:00
2011-03-19 13:33:20 +00:00
2012-03-18 17:50:17 +01:00
2011-09-26 19:26:30 +02:00
2011-03-19 13:33:20 +00:00
2011-06-02 20:06:00 +01:00
2011-04-20 14:59:45 +03:00
2011-09-26 19:26:28 +02:00
2011-03-19 13:33:20 +00:00
2011-05-02 12:18:44 +02:00
2011-05-27 08:31:16 +02:00
2011-05-27 08:31:16 +02:00
2011-05-27 08:31:16 +02:00
2011-05-17 23:01:42 +02:00
2011-04-08 15:59:19 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-04-15 18:02:05 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-23 08:50:37 +02:00
2011-06-04 19:51:43 +02:00
2011-07-12 18:05:55 +02:00
2011-06-03 00:44:03 +02:00
2012-03-18 17:50:11 +01:00
2011-05-12 15:52:25 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-06 14:10:08 +02:00
2011-01-28 01:45:17 +00:00
2011-03-19 13:33:20 +00:00
2011-04-19 19:47:58 +02:00
2011-03-19 13:33:20 +00:00
2011-04-06 14:10:08 +02:00
2011-05-27 08:31:16 +02:00
2011-07-03 19:49:53 +02:00
2011-03-19 13:33:20 +00:00
2011-05-28 12:15:55 +02:00
2012-04-01 18:33:26 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-04-19 19:47:58 +02:00
2011-07-03 19:49:53 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-06-02 20:06:00 +01:00
2011-04-19 18:28:38 +02:00
2011-05-21 13:48:10 +02:00
2011-06-16 17:40:21 +03:00
2011-04-19 19:47:58 +02:00
2011-06-19 18:15:56 -07:00
2011-09-27 20:57:08 +02:00
2011-06-10 10:52:32 +03:00
2011-04-03 22:47:32 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2012-03-18 17:50:30 +01:00
2011-06-08 07:43:45 +02:00
2012-03-18 17:50:31 +01:00
2011-03-19 13:33:20 +00:00
2011-06-10 19:12:14 +02:00
2011-09-26 19:26:29 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-05-27 08:31:16 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2012-03-18 17:50:36 +01:00
2011-09-26 19:26:28 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-04 18:15:50 +02:00
2011-06-10 19:12:14 +02:00
2011-03-19 13:33:20 +00:00
2011-04-28 07:25:28 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-09-26 19:26:33 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-02 20:06:00 +01:00
2011-03-19 13:33:20 +00:00
2011-04-17 19:31:49 +02:00
2011-02-06 16:08:59 -05:00
2011-06-08 07:43:45 +02:00
2011-06-02 20:06:18 +01:00
2011-06-16 20:24:56 +02:00
2011-05-12 11:41:59 +02:00
2011-04-24 00:05:38 +03:00
2011-04-19 19:47:58 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-05-25 15:55:46 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-05 15:01:36 +02:00
2011-06-04 19:51:43 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-05-27 06:52:52 +02:00
2011-06-16 20:24:56 +02:00
2011-03-19 13:33:20 +00:00
2011-07-23 10:29:43 +02:00
2011-04-14 13:56:09 +02:00
2011-06-02 20:06:00 +01:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-03-19 13:33:20 +00:00
2011-05-25 22:01:21 +03:00
2011-07-03 19:49:53 +02:00
2011-05-25 22:00:42 +03:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-24 00:05:37 +03:00
2011-06-16 20:24:56 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-24 00:05:37 +03:00
2011-06-02 20:06:00 +01:00
2011-04-24 00:05:37 +03:00
2011-04-24 00:05:37 +03:00
2011-05-13 00:20:59 +03:00
2011-04-24 00:05:37 +03:00
2011-04-24 00:05:37 +03:00
2011-04-24 00:05:37 +03:00
2011-04-24 00:05:37 +03:00
2011-06-03 12:59:05 +01:00
2011-04-24 00:05:37 +03:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-16 20:24:56 +02:00
2011-04-08 15:59:19 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-16 17:13:34 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-10 10:50:08 +03:00
2011-06-10 10:50:08 +03:00
2011-05-09 19:14:37 +03:00
2011-07-12 18:05:55 +02:00
2011-07-12 18:05:55 +02:00
2011-03-19 13:33:20 +00:00
2011-06-07 13:20:58 +02:00
2011-06-10 10:52:22 +03:00
2011-06-16 20:24:56 +02:00
2011-04-19 19:47:58 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-06-10 10:49:55 +03:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2012-03-18 17:50:30 +01:00
2011-04-01 19:29:08 +02:00
2011-03-19 13:33:20 +00:00
2011-09-26 19:26:32 +02:00
2012-03-18 17:50:17 +01:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-05-21 13:48:10 +02:00
2011-03-19 13:33:20 +00:00
2011-05-17 23:01:42 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-05-27 09:42:14 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-11 14:18:48 +02:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-05-12 11:41:59 +02:00
2011-05-21 13:48:10 +02:00
2012-03-18 17:50:35 +01:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-11-19 10:22:27 +01:00
2011-03-19 13:33:20 +00:00
2011-03-19 13:33:20 +00:00
2011-04-03 22:46:40 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-06-08 07:43:45 +02:00
2011-06-13 20:47:06 +02:00
2011-06-08 07:43:45 +02:00
2011-03-19 13:33:20 +00:00
2011-06-08 07:43:45 +02:00
2011-06-29 19:47:12 +02:00
2011-03-19 13:33:20 +00:00
2011-04-15 13:28:04 +02:00
2011-03-19 13:33:20 +00:00
2011-06-02 20:06:00 +01:00