Initialize thread_data->td for thread 0 in create_enc_workers

For --passes=1, the thread_data is shared between stats consumption
stage and stats generation stage, hence the thread_data->td that reaches
create_enc_workers is stale and is actually assigned the address of cpi_lap.
This patch reassigns thread_data->td of thread id 0 correctly to cpi->td.

BUG=aomedia:2925

Change-Id: Id9edeaa4ab6987b66c4ead8939e660654bad858f
diff --git a/av1/encoder/ethread.c b/av1/encoder/ethread.c
index bb0cd66..ba1572b 100644
--- a/av1/encoder/ethread.c
+++ b/av1/encoder/ethread.c
@@ -645,6 +645,8 @@
             cm, thread_data->td->vt64x64,
             aom_malloc(sizeof(*thread_data->td->vt64x64) * num_64x64_blocks));
       }
+    } else {
+      thread_data->td = &cpi->td;
     }
     if (cpi->oxcf.row_mt == 1)
       CHECK_MEM_ERROR(
@@ -1632,8 +1634,7 @@
   int num_gm_workers = cpi->sf.gm_sf.prune_ref_frame_for_gm_search
                            ? AOMMIN(MAX_DIRECTIONS, total_refs)
                            : total_refs;
-  num_gm_workers = AOMMIN(num_gm_workers, cpi->oxcf.max_threads);
-  assert(num_gm_workers <= cpi->mt_info.num_workers);
+  num_gm_workers = AOMMIN(num_gm_workers, cpi->mt_info.num_workers);
   return (num_gm_workers);
 }