Rev 6792 | Rev 7122 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6792 | Rev 6926 | ||
---|---|---|---|
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: 6792 $ |
8 | $Revision: 6926 $ |
9 | 9 | ||
Line 1435... | Line 1435... | ||
1435 | mov [eax+16], edx |
1435 | mov [eax+16], edx |
Line 1436... | Line 1436... | ||
1436 | 1436 | ||
1437 | call free ;release object memory |
1437 | call free ;release object memory |
Line -... | Line 1438... | ||
- | 1438 | ret |
|
- | 1439 | ||
1438 | ret |
1440 | |
1439 | 1441 | ;void* __fastcall create_object(size_t size) |
|
Line 1440... | Line 1442... | ||
1440 | ; param |
1442 | ; param |
1441 | ; ecx= size |
1443 | ; ecx= size |
Line 1483... | Line 1485... | ||
1483 | pop edi |
1485 | pop edi |
1484 | pop esi |
1486 | pop esi |
1485 | xor eax, eax |
1487 | xor eax, eax |
1486 | ret |
1488 | ret |
Line -... | Line 1489... | ||
- | 1489 | ||
- | 1490 | ||
- | 1491 | ;int __fastcall destroy_object(struct object *obj) |
|
- | 1492 | ||
- | 1493 | align 4 |
|
- | 1494 | destroy_object: |
|
- | 1495 | push esi |
|
- | 1496 | mov esi, [current_process] |
|
- | 1497 | mov edx, [ecx+FUTEX.handle] |
|
- | 1498 | ||
- | 1499 | pushfd |
|
- | 1500 | cli |
|
- | 1501 | ||
- | 1502 | mov eax, [esi+PROC.ht_next] |
|
- | 1503 | mov [esi+PROC.htab+edx*4], eax |
|
- | 1504 | mov [esi+PROC.ht_next], edx |
|
- | 1505 | inc [esi+PROC.ht_free] |
|
- | 1506 | ||
- | 1507 | popfd |
|
- | 1508 | pop esi |
|
- | 1509 | ||
- | 1510 | mov eax, ecx |
|
- | 1511 | call free |
|
- | 1512 | xor eax, eax |
|
- | 1513 | ret |
|
- | 1514 | .fail: |
|
- | 1515 | popfd |
|
- | 1516 | pop esi |
|
- | 1517 | mov eax, -1 |
|
- | 1518 | ret |