Warning fix

This commit is contained in:
Nekotekina 2014-09-20 04:08:12 +04:00
parent 66000240ac
commit 89da242cd2
7 changed files with 23 additions and 2 deletions

View File

@ -219,7 +219,7 @@ s64 spursInit(
// some unknown subroutine
spurs->m.sub3.unk1 = spurs.addr() + 0xc9;
spurs->m.sub3.unk2 = 3; // unknown const
spurs->m.sub3.port = (u64)spurs->m.port;
spurs->m.sub3.port = spurs->m.port;
if (flags & SAF_SYSTEM_WORKLOAD_ENABLED) // initialize system workload
{

View File

@ -78,6 +78,7 @@ public:
case TYPE_MUTEX: m_mutex_name[id] = name; break;
case TYPE_COND: m_cond_name[id] = name; break;
default: LOG_ERROR(GENERAL, "Unknown IDType = %d", type);
}
}
@ -93,13 +94,17 @@ public:
}
}
std::string& GetSyncPrimName(const IDType type, const u32 id)
const std::string& GetSyncPrimName(const IDType type, const u32 id)
{
static const std::string empty = "";
switch (type)
{
case TYPE_LWCOND: return m_lw_cond_name[id];
case TYPE_MUTEX: return m_mutex_name[id];
case TYPE_COND: return m_cond_name[id];
default: LOG_ERROR(GENERAL, "Unknown IDType = %d", type); return empty;
}
}

View File

@ -14,6 +14,8 @@ s32 sys_cond_create(vm::ptr<be_t<u32>> cond_id, u32 mutex_id, vm::ptr<sys_cond_a
sys_cond.Log("sys_cond_create(cond_id_addr=0x%x, mutex_id=%d, attr_addr=0x%x)",
cond_id.addr(), mutex_id, attr.addr());
LV2_LOCK(0);
if (attr->pshared.ToBE() != se32(0x200))
{
sys_cond.Error("Invalid pshared attribute(0x%x)", (u32)attr->pshared);
@ -45,6 +47,8 @@ s32 sys_cond_destroy(u32 cond_id)
{
sys_cond.Warning("sys_cond_destroy(cond_id=%d)", cond_id);
LV2_LOCK(0);
Cond* cond;
if (!Emu.GetIdManager().GetIDData(cond_id, cond))
{

View File

@ -11,6 +11,8 @@ SysCallBase sys_lwcond("sys_lwcond");
s32 lwcond_create(sys_lwcond_t& lwcond, sys_lwmutex_t& lwmutex, u64 name_u64)
{
LV2_LOCK(0);
u32 id = sys_lwcond.GetNewId(new Lwcond(name_u64), TYPE_LWCOND);
u32 addr = Memory.RealToVirtualAddr(&lwmutex);
lwcond.lwmutex.set(be_t<u32>::make(addr));
@ -38,6 +40,8 @@ s32 sys_lwcond_destroy(vm::ptr<sys_lwcond_t> lwcond)
{
sys_lwcond.Warning("sys_lwcond_destroy(lwcond_addr=0x%x)", lwcond.addr());
LV2_LOCK(0);
u32 id = lwcond->lwcond_queue;
Lwcond* lw;

View File

@ -56,6 +56,8 @@ s32 sys_lwmutex_destroy(vm::ptr<sys_lwmutex_t> lwmutex)
{
sys_lwmutex.Warning("sys_lwmutex_destroy(lwmutex_addr=0x%x)", lwmutex.addr());
LV2_LOCK(0);
u32 sq_id = lwmutex->sleep_queue;
if (!Emu.GetIdManager().CheckID(sq_id)) return CELL_ESRCH;

View File

@ -30,6 +30,8 @@ s32 sys_mutex_create(vm::ptr<be_t<u32>> mutex_id, vm::ptr<sys_mutex_attribute> a
{
sys_mutex.Log("sys_mutex_create(mutex_id_addr=0x%x, attr_addr=0x%x)", mutex_id.addr(), attr.addr());
LV2_LOCK(0);
switch (attr->protocol.ToBE())
{
case se32(SYS_SYNC_FIFO): break;
@ -73,6 +75,8 @@ s32 sys_mutex_destroy(u32 mutex_id)
{
sys_mutex.Warning("sys_mutex_destroy(mutex_id=%d)", mutex_id);
LV2_LOCK(0);
Mutex* mutex;
if (!Emu.GetIdManager().GetIDData(mutex_id, mutex))
{

View File

@ -55,6 +55,8 @@ s32 sys_semaphore_destroy(u32 sem_id)
{
sys_semaphore.Warning("sys_semaphore_destroy(sem_id=%d)", sem_id);
LV2_LOCK(0);
Semaphore* sem;
if (!Emu.GetIdManager().GetIDData(sem_id, sem))
{