- ModuleProvider* mp = getBytecodeBufferModuleProvider(
- (const unsigned char*) mbr->getData(), mbr->getSize(),
- FullMemberName, 0);
+ MemoryBuffer *Buffer =MemoryBuffer::getNewMemBuffer(mbr->getSize(),
+ FullMemberName.c_str());
+ memcpy((char*)Buffer->getBufferStart(), mbr->getData(), mbr->getSize());
+
+ ModuleProvider *mp = getBitcodeModuleProvider(Buffer, ErrMsg);
+ if (!mp)
+ return 0;