Subversion Repositories Kolibri OS

Rev

Rev 6408 | Rev 6411 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6408 Rev 6409
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 6408 $
8
$Revision: 6409 $
Line 9... Line 9...
9
 
9
 
10
; NTFS driver
10
; NTFS driver
Line 2226... Line 2226...
2226
        mov     ecx, eax
2226
        mov     ecx, eax
2227
        add     ecx, 8
2227
        add     ecx, 8
2228
        add     ecx, [esi+recordRealSize]
2228
        add     ecx, [esi+recordRealSize]
2229
        cmp     [esi+recordAllocatedSize], ecx
2229
        cmp     [esi+recordAllocatedSize], ecx
2230
        jc      .errorPop3      ; tree grow required
2230
        jc      .errorPop3      ; tree grow required
2231
        sub     ecx, 8
-
 
2232
        mov     [esi+recordRealSize], ecx
-
 
2233
        add     esi, ecx
-
 
2234
        push    edi eax esi
2231
        push    edi eax
2235
        call    .ntfsNodeAlloc
2232
        call    .ntfsNodeAlloc
2236
        pop     esi eax edi
2233
        pop     ecx edi
2237
        jc      ntfsErrorPop3
2234
        jc      ntfsErrorPop3
2238
        push    edi
2235
        push    edi
2239
        mov     edi, [ebp+NTFS.indexRoot]
2236
        mov     edi, [ebp+NTFS.indexRoot]
-
 
2237
        mov     eax, ecx
2240
        add     [ebp+NTFS.attr_offs], eax
2238
        add     [ebp+NTFS.attr_offs], eax
2241
        add     [edi+sizeWithHeader], eax
2239
        add     [edi+sizeWithHeader], eax
2242
        add     [edi+sizeWithoutHeader], eax
2240
        add     [edi+sizeWithoutHeader], eax
2243
        movzx   ecx, byte [edi+attributeOffset]
2241
        movzx   ecx, byte [edi+attributeOffset]
2244
        add     ecx, edi
2242
        add     ecx, edi
2245
        add     [ecx+rootNode+nodeRealSize], eax
2243
        add     [ecx+rootNode+nodeRealSize], eax
2246
        add     [ecx+rootNode+nodeAllocatedSize], eax
2244
        add     [ecx+rootNode+nodeAllocatedSize], eax
2247
        add     ecx, [ebp+NTFS.indexPointer]
2245
        add     ecx, [ebp+NTFS.indexPointer]
2248
        sub     ecx, [ebp+NTFS.secondIndexBuffer]
2246
        sub     ecx, [ebp+NTFS.secondIndexBuffer]
-
 
2247
        mov     esi, [ebp+NTFS.frs_buffer]
-
 
2248
        add     [esi+recordRealSize], eax
-
 
2249
        add     esi, [esi+recordRealSize]
2249
        mov     edi, esi
2250
        mov     edi, esi
2250
        sub     esi, eax
2251
        sub     esi, eax
2251
        neg     ecx
2252
        neg     ecx
2252
        add     ecx, esi
2253
        add     ecx, esi
2253
        shr     ecx, 2
2254
        shr     ecx, 2