Adding log lines to help find unimplemented NtQueryInformationFile calls.

This commit is contained in:
Ben Vanik 2015-08-30 16:38:51 -07:00
parent 65812438c4
commit 39989a6107
1 changed files with 4 additions and 3 deletions

View File

@ -387,7 +387,6 @@ dword_result_t NtQueryInformationFile(
// Internal unique file pointer. Not sure why anyone would want this. // Internal unique file pointer. Not sure why anyone would want this.
assert_true(length == 8); assert_true(length == 8);
info = 8; info = 8;
// TODO(benvanik): use pointer to fs:: entry? // TODO(benvanik): use pointer to fs:: entry?
xe::store_and_swap<uint64_t>(file_info_ptr, xe::store_and_swap<uint64_t>(file_info_ptr,
xe::memory::hash_combine(0, file->path())); xe::memory::hash_combine(0, file->path()));
@ -398,7 +397,6 @@ dword_result_t NtQueryInformationFile(
// }; // };
assert_true(length == 8); assert_true(length == 8);
info = 8; info = 8;
xe::store_and_swap<uint64_t>(file_info_ptr, file->position()); xe::store_and_swap<uint64_t>(file_info_ptr, file->position());
break; break;
case XFileNetworkOpenInformation: { case XFileNetworkOpenInformation: {
@ -427,6 +425,9 @@ dword_result_t NtQueryInformationFile(
} }
case XFileXctdCompressionInformation: { case XFileXctdCompressionInformation: {
assert_true(length == 4); assert_true(length == 4);
XELOGE(
"NtQueryInformationFile(XFileXctdCompressionInformation) "
"unimplemented");
// This is wrong and puts files into wrong states for games that use // This is wrong and puts files into wrong states for games that use
// XctdDecompression. // XctdDecompression.
/* /*
@ -454,7 +455,7 @@ dword_result_t NtQueryInformationFile(
case XFileSectorInformation: case XFileSectorInformation:
// TODO(benvanik): return sector this file's on. // TODO(benvanik): return sector this file's on.
assert_true(length == 4); assert_true(length == 4);
XELOGE("NtQueryInformationFile(XFileSectorInformation) unimplemented");
result = X_STATUS_UNSUCCESSFUL; result = X_STATUS_UNSUCCESSFUL;
info = 0; info = 0;
break; break;