BOOL foundscp;
cm_req_t req;
int created = 0;
+ int prefetch = 0;
cm_lock_data_t *ldp = NULL;
smb_InitReq(&req);
if ((fidp->flags & SMB_FID_EXECUTABLE) &&
LargeIntegerGreaterThanZero(fidp->scp->length) &&
!(scp->flags & CM_SCACHEFLAG_PREFETCHING)) {
+ prefetch = 1;
+ }
+ lock_ReleaseRead(&scp->rw);
+
+ if (prefetch)
cm_QueueBKGRequest(fidp->scp, cm_BkgPrefetch, 0, 0,
fidp->scp->length.LowPart, fidp->scp->length.HighPart,
userp);
- }
- lock_ReleaseRead(&scp->rw);
+
osi_Log2(smb_logp, "SMB NT CreateX opening fid %d path %S", fidp->fid,
osi_LogSaveClientString(smb_logp, realPathp));
char *outData;
cm_req_t req;
int created = 0;
+ int prefetch = 0;
cm_lock_data_t *ldp = NULL;
smb_InitReq(&req);
if ((fidp->flags & SMB_FID_EXECUTABLE) &&
LargeIntegerGreaterThanZero(fidp->scp->length) &&
!(scp->flags & CM_SCACHEFLAG_PREFETCHING)) {
+ prefetch = 1;
+ }
+ lock_ReleaseRead(&scp->rw);
+
+ if (prefetch)
cm_QueueBKGRequest(fidp->scp, cm_BkgPrefetch, 0, 0,
fidp->scp->length.LowPart, fidp->scp->length.HighPart,
userp);
- }
- lock_ReleaseRead(&scp->rw);
osi_Log1(smb_logp, "SMB NTTranCreate opening fid %d", fidp->fid);