コード例 #1
0
ファイル: dynamic_input_area.c プロジェクト: kjk/noah-palm
/**
 * Performs cleanup of Sony-CLIE specific features.
 */
static Err SonySilkLibFree(DIA_Settings* diaSettings) 
{
    UInt32  vskVersion=0;
    Err     error;

    Assert(diaSettings);
    Assert(DIA_HasSonySilkLib(diaSettings));
    Assert(diaSettings->sonySilkLibRefNum);

    error=FtrGet(sonySysFtrCreator, sonySysFtrNumVskVersion, &vskVersion);
    if (error)
    {
        SilkLibDisableResize(diaSettings->sonySilkLibRefNum);
        error=SilkLibClose(diaSettings->sonySilkLibRefNum);
        if (silkLibErrStillOpen==error) error=errNone;
        if (error) goto OnErrorFreeLib;
    }
    else
    {
        error=VskClose(diaSettings->sonySilkLibRefNum);
        if (vskErrStillOpen==error) error=errNone;
        if (error) goto OnErrorFreeLib;
    }

OnErrorFreeLib:
    if (DIA_TestFlag(diaSettings, diaLoadedSonySilkLib))
    {
        Err tmpErr=SysLibRemove(diaSettings->sonySilkLibRefNum);
        if (tmpErr) error=tmpErr;
    }
    diaSettings->sonySilkLibRefNum=0;
    return error;
}
コード例 #2
0
ファイル: ZDicTools.c プロジェクト: CocoaBob/ZDic
/***********************************************************************
 *
 * FUNCTION:    ZDicToolsLibRelease
 *
 * DESCRIPTION: This routine Unload a library previously loaded .
 *				must called after GSLLibInitial.
 *
 * PARAMETERS:  -> refNum The library reference number
 *				-> bLoadP true if we need release the library.
 *
 * RETURNED:    errNone if no error
 *
 * REVISION HISTORY:
 *		Name			Date		Description
 *		----			----		-----------
 *		ZhongYuanHuan	14/Aug/04	Initial Revision 
 *
 ***********************************************************************/
Err ZDicToolsLibRelease(UInt16 refNum, Boolean bLoad)
{
	Err	err;
	
	if(bLoad)
		err = SysLibRemove(refNum);
	
	return err;
}
コード例 #3
0
ファイル: CLib.c プロジェクト: CocoaBob/TreoChineseMate
/*
 * ClibRemove
 * 关闭并卸载通讯录拼音查找库
 *
 * 参数:
 *	refNum			->	已经打开的查找库的引用
 *	clientContext	->	已经打开的查找库的Client Context
 *
 * 返回:
 *	当成功关闭并卸载库时,返回errNone;否则返回对应的错误代码
 */
Err CLibRemove(UInt16 refNum, UInt32 clientContext)
{
	UInt16	error = CNLB_RUNTIME_ERROR;
	
	if (CLibClose(refNum, clientContext) == errNone)
	{
		error = SysLibRemove(refNum);
	}
	
	return error;
}
コード例 #4
0
ファイル: axxpacimp.c プロジェクト: TimofonicJunkRoom/plucker
/* close AxxPac library and remove it if necessary */
void TeardownAxxPac(void)
{
    UInt16 numapps;
    Err err;

    if ( axxPacStatus == AXXPAC_PRESENT) {
        err = axxPacLibClose(LibRef, &numapps);
        if ( ( err == errNone ) && ( numapps == 0 ) )
            SysLibRemove( LibRef );
        axxPacStatus=AXXPAC_STATUS_UNKNOWN;
    }
}
コード例 #5
0
ファイル: sony_support.c プロジェクト: petesh/pocketcity
Err
unloadHiRes(void)
{
	Err rv = 0;
	if (hires != 0) {
		rv = HRClose(hires);
		if (didl)
			SysLibRemove(hires);
		didl = 0;
		hires = 0;
	}
	return (rv);
}
コード例 #6
0
ファイル: sony_support.c プロジェクト: petesh/pocketcity
Boolean
sonyCanHires(void)
{
	if (hires == 0) {
		loadHiRes();
		if (hires != 0) {
			HRClose(hires);
			SysLibRemove(hires);
			hires = 0;
			return (true);
		} else
			return (false);
	} else
		return (true);
}
コード例 #7
0
ファイル: device_info.cpp プロジェクト: kjk/noah-palm
Err GetPhoneNumber(ExtensibleBuffer* out)
{
    Boolean fNeedToRemove=false;
    UInt16 refNum;

    Err error = GetPhoneLib(&refNum,&fNeedToRemove);
    if (error)
        return error;

    if ( !CheckPhonePower(refNum) )
        return sysErrNotAllowed;

    Assert(sysInvalidRefNum!=refNum);

    PhnAddressList addressList=NULL;
    error=PhnLibGetOwnNumbers(refNum, &addressList);
    if (error)
        goto Exit;

    PhnAddressHandle address=NULL;
    error=PhnLibAPGetNth(refNum, addressList, 1, &address);
    if (!error && address)
    {
        char* number=PhnLibAPGetField(refNum, address, phnAddrFldPhone);
        MemHandleFree(address);
        if (number)
        {
            ebufAddStr(out, number);
            MemPtrFree(number);
        }
        else 
            error=sysErrNotAllowed;
    }
    MemHandleFree(addressList);
Exit:
    if (fNeedToRemove)
        SysLibRemove(refNum);
    return error;
}