Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
* hieroglyph/hgobject.c (_hg_object_new): Fix the alignment issue.
* hieroglyph/hgstack.c (hg_stack_dump): Fix a warning on 64bit arch.
* tests/hgobject.c (test_hg_object_sized_new): update the aligned size.
|
|
* tests/Makefile.am (test_hgstack_SOURCES): use check library.
* tests/hgstack.c: Add more testcases.
|
|
* tests/hgstring.c: Add more testcases.
|
|
* tests/hgdict.c: Add more testcases.
|
|
* hieroglyph/hgobject.h (HG_OBJECT_REAL_IS_EQUAL_TO): new macro.
* hieroglyph/hgobject.c (hg_object_name_compare_with_raw): new function.
(hg_object_name_n_compare_with_raw): new function.
* hieroglyph/vm.c (hg_vm_new): have a flag to check if
the initialization is done.
(hg_vm_initialize): do nothing if the initialization is already done.
(hg_vm_finalize): finalize the VM.
* hieroglyph/hgoperator.c (hg_object_operator_initialize): have a flag
to check if the initialization is done.
* hieroglyph/hgdictprime.h (__hg_dict_primes): correct primes table.
* tests/hgobject.c: Add more test cases.
|
|
|
|
* hieroglyph/utils.c (hg_quiet_warning_messages): new function.
(hg_allow_warning_messages): new function.
* tests/hgobject.c (test_hgobject_new): disable the warning messages
for some things that is intentional not to confuse.
(test_hg_object_dup): likewise.
* tests/hgarray.c (test_hg_object_array_subarray_new): likewise.
|
|
|
|
* hieroglyph/hgobject.c (_hg_object_new): Initialize the object type.
(hg_object_name_new): Initialize the unused value too.
* hieroglyph/vm.c (hg_vm_get_current_allocation_mode): new function.
(hg_vm_set_current_allocation_mode): likewise.
(hg_vm_get_attributes): Follow the value for the allocation mode.
* hieroglyph/hgdict.c (_hg_object_dict_insert): Fix a typo.
(hg_object_dict_new): Initialize the array area.
* configure.ac (AC_INIT): Update the bug report address.
* tests/hgdict.c: Add more test cases.
|
|
|
|
* hieroglyph/hgarray.c (hg_object_array_new): initialize the array.
(hg_object_array_compare): consider the objects as the same if the same
address is given.
* hieroglyph/hgobject.c (hg_object_compare): consider the objects as
the same if the same address is given.
* tests/hgarray.c: add more test cases.
|
|
* tests/Makefile.am: add more test cases.
* hieroglyph/hgobject.c (hg_object_dup): initialize the return value with NULL.
|
|
* hieroglyph/vm.c (hg_vm_stepi): new function to step one instruction exactly.
|
|
|
|
|
|
|
|
* hieroglyph/hgfile.c (hg_file_object_ungetc): fix a duplicate of
pushing back.
|
|
|
|
recognize a special character after numeric.
|
|
|
|
* plugins/test/test-main.c (_test_op_validateunittest): fix a typo.
|
|
an unnecessary push back.
|
|
* hieroglyph/hgstack.c (_hg_stack_real_set_flags): modify due to using
HgList instead of GList.
(_hg_stack_real_relocate): likewise.
(_hg_stack_real_dup): likewise.
(hg_stack_new): likewise.
(_hg_stack_push): likewise.
(hg_stack_pop): likewise.
(hg_stack_clear): likewise.
(hg_stack_index): likewise.
(hg_stack_roll): likewise.
(hg_stack_dump): likewise.
* hieroglyph/hglist.c (hg_list_iter_get_index): new function.
(hg_list_iter_roll): new function.
|
|
* hieroglyph/hglist.c (hg_list_get_iter_previous): new function.
(hg_list_get_iter_last): new function.
|
|
|
|
ungetc.
|
|
managing snapshot in VM.
* hieroglyph/hgmem.c (hg_mem_pool_get_n_snapshots): new function.
(hg_mem_pool_get_snapshot): new function.
(hg_mem_pool_clear_snapshot): new function.
(hg_mem_pool_add_root_node): renamed.
(hg_mem_pool_remove_root_node): likewise.
(hg_mem_pool_add_pool_reference): likewise.
(hg_mem_pool_remove_pool_reference): likewise.
|
|
|
|
* hieroglyph/scanner.c (_hg_scanner_parse_number): push back a space
to deal with it later.
|
|
code.
(hg_mem_finalize): remove GAllocator finalization code.
(hg_mem_pool_destroy): use HgList instead of GList.
(hg_mem_pool_is_own_object): likewise.
(hg_mem_pool_save_snapshot): save an snapshot image to the list in pool.
(hg_mem_pool_get_age_of_snapshot): new function.
(_hg_mem_set_flags): new function.
(hg_mem_add_root_node): use HgList instead of GList.
(hg_mem_remove_root_node): likewise.
(hg_mem_add_pool_reference): likewise.
(hg_mem_remove_pool_reference): likewise.
* hieroglyph/hgallocator-bfit.c (_hg_allocator_bfit_relocate):
use HgList instead of GList.
(_hg_allocator_bfit_real_set_flags): new function to avoid a fail of
restoring a snapshot when the unused complex objects are freed after
snapping shot, because snapshot image doesn't take care of mere
complex objects.
(_hg_allocator_bfit_real_garbage_collection):
use HgList instead of GList.
(_hg_allocator_bfit_real_restore_snapshot): take an argument to adjust
the amount of objects for the fudge factor.
* hieroglyph/hgmacros.h (HG_MEMOBJ_GET_SNAPSHOT_AGE): add a new macro.
(HG_MEMOBJ_SET_SNAPSHOT_AGE): add a new macro.
|
|
* hieroglyph/hglist.c (hg_list_length): fixed an infinite loop issue.
(hg_list_remove): reimplement with iterator to be simplified.
* hieroglyph/ilist.c (_hg_list_length): fixed an infinite loop issue.
(_hg_list_remove): reimplement with iterator to be simplified.
|
|
* hieroglyph/hglog.c (hg_logv): don't use HgString to get it working
even when memory allocation error happens.
|
|
(hg_vm_lookup_with_string): likewise.
(hg_vm_set_error): likewise.
* hieroglyph/hgplugins.c (_hg_plugin_load): use logger facility.
* hieroglyph/hgmem.c (_hg_mem_init_stack_start): use logger facility.
(hg_mem_pool_new): likewise.
(hg_mem_gc_mark_array_region): likewise.
* hieroglyph/hgallocator-bfit.c (_hg_allocator_bfit_real_garbage_collection):
use logger facility.
(_hg_allocator_bfit_real_gc_mark): likewise.
* src/hgs.c (main): set flags from HIEROGLYPH_DEBUG environment
variable.
* devices/cairo/hgdevice-cairo.c (_hg_cairo_device_print_path):
use logger facility.
(_hg_cairo_device_real_eofill): likewise.
(_hg_cairo_device_real_fill): likewise.
(_hg_cairo_device_real_stroke): likewise.
(_hg_cairo_device_set_matrix): likewise.
|
|
* hieroglyph/vm.c (hg_vm_init): initialize logger facility.
(hg_vm_finalize): finalize logger.
* hieroglyph/hglog.c (hg_log_set_flag): new function.
(hg_logv): allow to output a message without initialization.
|
|
|
|
* hieroglyph/Makefile.am (libhieroglyph_la_SOURCES): added hglog.c.
* hieroglyph/hglog.[ch]: new files for logger.
|
|
* hieroglyph/vm.c (_hg_vm_op_rollbacksecuritylevel): ignore the errors.
|
|
security level and rollback it after finished the object's execution.
* hieroglyph/vm.c (_hg_vm_op_rollbacksecuritylevel): new function.
(hg_vm_set_security_level): implemented.
(hg_vm_get_security_level): implemented.
|
|
* hieroglyph/operator.c (_hg_operator_op_countdictstack):
check VMerror.
(_hg_operator_op_countexecstack): likewise.
(_hg_operator_op_currentdict): likewise.
(_hg_operator_op_currentfile): likewise.
(_hg_operator_op_dup): likewise.
(_hg_operator_op_private_hg_getsecuritylevel): new function.
(_hg_operator_op_private_hg_setsecuritylevel): new function.
|
|
* plugins/test/hg_unittest.ps (initunittest): erase a prompt.
(.updateunittestprogress): show a pinwheel.
|
|
|
|
|
|
out of ostack if restore successfully complete.
|
|
just makes VM initialization.
|
|
|
|
(hg_file_object_write): call fsync after writing according to
the current state of I/O synchronous.
|
|
(hg_string_append_vprintf): new function.
|
|
* hieroglyph/hgdict.c (_hg_dict_traverse_set_flags): removed
the unnecessary debugging code.
|
|
* tests/ps/test-ps.sh (run_test): new function.
* hieroglyph/scanner.c (_hg_scanner_parse_number): fixed a typo.
|