Code: int Track::Info::CopyStr(char* Info::*str, Info& dst_) const {
 if (str == static_cast<char * Info::*>(NULL))
 return -1;

 char*& dst = dst_.*str;

 if (dst) // should be NULL already
 return -1;

 const char* const src = this->*str;

 if (src == NULL)
 return 0;

 
   const size_t len = strlen(src);
 
  dst = new (std::nothrow) char[len + 1];
 
   if (dst == NULL)
     return -1;

  strcpy(dst, src);

 return 0;
}

Commit Message: external/libvpx/libwebm: Update snapshot

Update libwebm snapshot. This update contains security fixes from upstream.

Upstream git hash: 229f49347d19b0ca0941e072b199a242ef6c5f2b

BUG=23167726

Change-Id: Id3e140e7b31ae11294724b1ecfe2e9c83b4d4207
(cherry picked from commit d0281a15b3c6bd91756e453cc9398c5ef412d99a)

CWE ID: CWE-20
int Track::Info::CopyStr(char* Info::*str, Info& dst_) const {
 if (str == static_cast<char * Info::*>(NULL))
 return -1;

 char*& dst = dst_.*str;

 if (dst) // should be NULL already
 return -1;

 const char* const src = this->*str;

 if (src == NULL)
 return 0;

 
   const size_t len = strlen(src);
 
  dst = SafeArrayAlloc<char>(1, len + 1);
 
   if (dst == NULL)
     return -1;

  strcpy(dst, src);

 return 0;
}
