Merge "Revert "Fix and suppress warnings in external/libspeex.""
diff --git a/Android.bp b/Android.bp
index 16d0819..4fd0d46 100644
--- a/Android.bp
+++ b/Android.bp
@@ -42,6 +42,7 @@
         "-fprefetch-loop-arrays",
         "-Wall",
         "-Werror",
+        "-Wno-sign-compare",
     ],
 
     local_include_dirs: ["include"],
diff --git a/libspeex/resample.c b/libspeex/resample.c
index ed4cfa3..1eeef20 100644
--- a/libspeex/resample.c
+++ b/libspeex/resample.c
@@ -600,7 +600,7 @@
       }
       for (i=0;i<st->den_rate;i++)
       {
-         spx_uint32_t j;
+         spx_int32_t j;
          for (j=0;j<st->filt_len;j++)
          {
             st->sinc_table[i*st->filt_len+j] = sinc(st->cutoff,((j-(spx_int32_t)st->filt_len/2+1)-((float)i)/st->den_rate), st->filt_len, quality_map[st->quality].window_func);
@@ -672,7 +672,7 @@
       }
       for (i=st->nb_channels-1;i>=0;i--)
       {
-         spx_uint32_t j;
+         spx_int32_t j;
          spx_uint32_t olen = old_length;
          /*if (st->magic_samples[i])*/
          {
@@ -680,9 +680,8 @@
             
             /* FIXME: This is wrong but for now we need it to avoid going over the array bounds */
             olen = old_length + 2*st->magic_samples[i];
-            spx_int32_t k;
-            for (k=old_length-2+st->magic_samples[i];k>=0;k--)
-               st->mem[i*st->mem_alloc_size+k+st->magic_samples[i]] = st->mem[i*old_alloc_size+k];
+            for (j=old_length-2+st->magic_samples[i];j>=0;j--)
+               st->mem[i*st->mem_alloc_size+j+st->magic_samples[i]] = st->mem[i*old_alloc_size+j];
             for (j=0;j<st->magic_samples[i];j++)
                st->mem[i*st->mem_alloc_size+j] = 0;
             st->magic_samples[i] = 0;
@@ -851,7 +850,7 @@
 EXPORT int speex_resampler_process_float(SpeexResamplerState *st, spx_uint32_t channel_index, const float *in, spx_uint32_t *in_len, float *out, spx_uint32_t *out_len)
 #endif
 {
-   spx_uint32_t j;
+   int j;
    spx_uint32_t ilen = *in_len;
    spx_uint32_t olen = *out_len;
    spx_word16_t *x = st->mem + channel_index * st->mem_alloc_size;
@@ -892,7 +891,7 @@
 EXPORT int speex_resampler_process_int(SpeexResamplerState *st, spx_uint32_t channel_index, const spx_int16_t *in, spx_uint32_t *in_len, spx_int16_t *out, spx_uint32_t *out_len)
 #endif
 {
-   spx_uint32_t j;
+   int j;
    const int istride_save = st->in_stride;
    const int ostride_save = st->out_stride;
    spx_uint32_t ilen = *in_len;