VirtualBox

忽略:
時間撮記:
2008-7-4 下午11:40:47 (16 年 以前)
作者:
vboxsync
訊息:

Set FileObject.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/HostDrivers/Support/win/SUPR0IdcClient-win.c

    r10260 r10261  
    4848 * @returns VBox status code.
    4949 * @param   pDeviceObject   The device object to call.
     50 * @param   pFileObject     The file object for the connection.
    5051 * @param   iReq            The request.
    5152 * @param   pReq            The request packet.
    5253 */
    53 static int supR0IdcNtCallInternal(PDEVICE_OBJECT pDeviceObject, uint32_t iReq, PSUPDRVIDCREQHDR pReq)
     54static int supR0IdcNtCallInternal(PDEVICE_OBJECT pDeviceObject, PFILE_OBJECT pFileObject, uint32_t iReq, PSUPDRVIDCREQHDR pReq)
    5455{
    5556    int                 rc;
     
    5758    KEVENT              Event;
    5859    PIRP                pIrp;
     60    NTSTATUS            rcNt;
    5961
    6062    /*
     
    7375    if (pIrp)
    7476    {
     77        IoGetNextIrpStackLocation(pIrp)->FileObject = pFileObject;
     78
    7579        /*
    7680         * Call the driver, wait for an async request to complete (should never happen).
    7781         */
    78         NTSTATUS rcNt = IoCallDriver(pDeviceObject, pIrp);
     82        rcNt = IoCallDriver(pDeviceObject, pIrp);
    7983        if (rcNt == STATUS_PENDING)
    8084        {
     
    114118         * Make the connection call.
    115119         */
    116         rc = supR0IdcNtCallInternal(pDeviceObject, SUPDRV_IDC_REQ_CONNECT, &pReq->Hdr);
     120        rc = supR0IdcNtCallInternal(pDeviceObject, pFileObject, SUPDRV_IDC_REQ_CONNECT, &pReq->Hdr);
    117121        if (RT_SUCCESS(rc))
    118122        {
     
    136140int VBOXCALL supR0IdcNativeClose(PSUPDRVIDCHANDLE pHandle, PSUPDRVIDCREQHDR pReq)
    137141{
    138     PDEVICE_OBJECT  pDeviceObject = pHandle->s.pDeviceObject;
    139     PFILE_OBJECT    pFileObject   = pHandle->s.pFileObject;
    140     int rc = supR0IdcNtCallInternal(pDeviceObject, SUPDRV_IDC_REQ_DISCONNECT, pReq);
     142    PFILE_OBJECT pFileObject = pHandle->s.pFileObject;
     143    int rc = supR0IdcNtCallInternal(pHandle->s.pDeviceObject, pFileObject, SUPDRV_IDC_REQ_DISCONNECT, pReq);
    141144    if (RT_SUCCESS(rc))
    142145    {
     
    152155int VBOXCALL supR0IdcNativeCall(PSUPDRVIDCHANDLE pHandle, uint32_t iReq, PSUPDRVIDCREQHDR pReq)
    153156{
    154     return supR0IdcNtCallInternal(pHandle->s.pDeviceObject, iReq, pReq);
     157    return supR0IdcNtCallInternal(pHandle->s.pDeviceObject, pHandle->s.pFileObject, iReq, pReq);
    155158}
    156159
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette