diff options
author | Max Horn | 2009-05-10 19:17:51 +0000 |
---|---|---|
committer | Max Horn | 2009-05-10 19:17:51 +0000 |
commit | 019f87fd1b25f88c46615edbe09de6618d4b3bf7 (patch) | |
tree | e1948dd0ee65fb7cec3b59f5bc59bf2cc0946631 /engines/sci/engine/vm.h | |
parent | 36818ced2a546ccb5318adaa22f8d90794edca8a (diff) | |
download | scummvm-rg350-019f87fd1b25f88c46615edbe09de6618d4b3bf7.tar.gz scummvm-rg350-019f87fd1b25f88c46615edbe09de6618d4b3bf7.tar.bz2 scummvm-rg350-019f87fd1b25f88c46615edbe09de6618d4b3bf7.zip |
SCI: Changed object list in Script instances to use Common:::Array
svn-id: r40431
Diffstat (limited to 'engines/sci/engine/vm.h')
-rw-r--r-- | engines/sci/engine/vm.h | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/engines/sci/engine/vm.h b/engines/sci/engine/vm.h index 65ecb0584f..0f3ed5f0ab 100644 --- a/engines/sci/engine/vm.h +++ b/engines/sci/engine/vm.h @@ -277,6 +277,8 @@ struct Object { uint16 *base_method; /**< Pointer to the method selector area for this object */ uint16 *base_vars; /**< Pointer to the varselector area for this object */ reg_t *variables; + + Object() { memset(this, 0, sizeof(*this)); } }; struct CodeBlock { @@ -323,11 +325,12 @@ struct Script : public MemObject { int synonyms_nr; /**< Number of entries in the synonyms block */ int lockers; /**< Number of classes and objects that require this script */ - Object *objects; /**< Table for objects, contains property variables */ - /* Indexed by the value stored at SCRIPT_LOCALVARPTR_OFFSET, - ** see VM_OBJECT_[GS]ET_INDEX() */ - int objects_nr; /**< Number of objects and classes */ - int objects_allocated; /**< Number of allocated objects */ + /** + * Table for objects, contains property variables. + * Indexed by the value stored at SCRIPT_LOCALVARPTR_OFFSET, + * see VM_OBJECT_[GS]ET_INDEX() + */ + Common::Array<Object> _objects; int locals_offset; int locals_segment; /**< The local variable segment */ @@ -353,10 +356,6 @@ public: obj_indices = NULL; - objects = NULL; - objects_allocated = 0; - objects_nr = 0; - locals_offset = 0; locals_segment = 0; locals_block = NULL; |