• R/O
  • SSH
  • HTTPS

eirfs: Commit


Commit MetaInfo

Revisión166 (tree)
Tiempo2022-01-18 09:11:14
Autorquiret

Log Message

- Linux fixes

Cambiar Resumen

Diferencia incremental

--- FileSystem/src/fsinternal/CFileSystem.DiskManager.cpp (revision 165)
+++ FileSystem/src/fsinternal/CFileSystem.DiskManager.cpp (revision 166)
@@ -99,7 +99,7 @@
9999 size_t seg1_cnt = ( end_seg1 - beg_seg1 );
100100
101101 std::uint32_t seg1 = eir::to_number_len <std::uint32_t> ( beg_seg1, seg1_cnt, 16 );
102-
102+
103103 static const charType _minus_str[] =
104104 {
105105 eir::GetMinusSignCodepoint <charType> (), 0
@@ -1025,22 +1025,26 @@
10251025 AINLINE registeredMountPoint& operator = ( registeredMountPoint&& ) = default;
10261026 AINLINE registeredMountPoint& operator = ( const registeredMountPoint& ) = default;
10271027
1028- AINLINE bool operator < ( const registeredMountPoint& right ) const
1028+ eir::String <char, FSObjectHeapAllocator> mnt_path;
1029+ };
1030+
1031+ struct mountPointComparator
1032+ {
1033+ static AINLINE eir::eCompResult compare_values( const registeredMountPoint& left, const registeredMountPoint& right ) noexcept
10291034 {
1030- return lexical_string_comparator <true>::compare_values( this->mnt_path, right.mnt_path ) == eir::eCompResult::LEFT_LESS;
1035+ return lexical_string_comparator <true>::compare_values( left.mnt_path, right.mnt_path );
10311036 }
1032-
1033- eir::String <char, FSObjectHeapAllocator> mnt_path;
10341037 };
1035- eir::Set <registeredMountPoint, FSObjectHeapAllocator> curr_mnt_points;
10361038
1039+ eir::Set <registeredMountPoint, FSObjectHeapAllocator, mountPointComparator> curr_mnt_points;
1040+
10371041 decltype(curr_mnt_points) parse_linux_mounts( int fd )
10381042 {
1039- CFileSystemNative *fileSys = this->get_file_system();
1043+ //CFileSystemNative *fileSys = this->get_file_system();
10401044
1041- decltype(curr_mnt_points) mnts( eir::constr_with_alloc::DEFAULT, fileSys );
1045+ decltype(curr_mnt_points) mnts;
10421046
1043- eir::Vector <char, FSObjectHeapAllocator> filebuf( eir::constr_with_alloc::DEFAULT, fileSys );
1047+ eir::Vector <char, FSObjectHeapAllocator> filebuf;
10441048
10451049 char tmp[1024];
10461050
@@ -1061,7 +1065,7 @@
10611065 }
10621066
10631067 size_t cur_coll_idx = 0;
1064- eir::String <char, FSObjectHeapAllocator> curtoken( eir::constr_with_alloc::DEFAULT, fileSys );
1068+ eir::String <char, FSObjectHeapAllocator> curtoken;
10651069
10661070 decltype(registeredMountPoint::mnt_path) mnt_path;
10671071
@@ -1726,7 +1730,7 @@
17261730 {
17271731 mountPointDeviceInfo devinfo;
17281732 devinfo.volume_guid = mntptinfo.volume_guid;
1729-
1733+
17301734 devinfo_out = std::move( devinfo );
17311735 return true;
17321736 }
@@ -1827,7 +1831,7 @@
18271831 BOOL offlinesucc = DeviceIoControl( hvolume, IOCTL_VOLUME_OFFLINE, nullptr, 0, nullptr, 0, &bytesret, nullptr );
18281832
18291833 this->was_taken_offline = ( offlinesucc == TRUE );
1830-
1834+
18311835 this->hvolume = std::move( hvolume );
18321836 }
18331837
--- FileSystem/src/fsinternal/CFileSystem.internal.nativeimpl.hxx (revision 165)
+++ FileSystem/src/fsinternal/CFileSystem.internal.nativeimpl.hxx (revision 166)
@@ -659,23 +659,23 @@
659659 void *dataptr;
660660 size_t mappingSize;
661661
662- AINLINE friend bool operator < ( const map_registration& left, const map_registration& right ) noexcept
662+ AINLINE static eir::eCompResult compare_values( const map_registration& left, const map_registration& right ) noexcept
663663 {
664- return ( left.dataptr < right.dataptr );
664+ return eir::DefaultValueCompare( left.dataptr, right.dataptr );
665665 }
666666
667- AINLINE friend bool operator < ( const map_registration& left, const void *right ) noexcept
667+ AINLINE static eir::eCompResult compare_values( const map_registration& left, const void *right ) noexcept
668668 {
669- return ( left.dataptr < right );
669+ return eir::DefaultValueCompare( left.dataptr, right );
670670 }
671671
672- AINLINE friend bool operator < ( const void *left, const map_registration& right ) noexcept
672+ AINLINE static eir::eCompResult compare_values( const void *left, const map_registration& right ) noexcept
673673 {
674- return ( left < right.dataptr );
674+ return eir::DefaultValueCompare( left, right.dataptr );
675675 }
676676 };
677677
678- eir::Set <map_registration, FSObjectHeapAllocator> setOfMappings;
678+ eir::Set <map_registration, FSObjectHeapAllocator, map_registration> setOfMappings;
679679 };
680680
681681 #endif
Show on old repository browser