Mercurial > emacs
annotate src/w32heap.h @ 99139:8fa7ef477c04
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-format-agenda-item)
(org-agenda-filter-make-matcher): Make sure tags are stored and
compared donwcased.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-insert-todo-heading): Fix bug with force-heading
argument.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-exp.el (org-export-as-ascii): Handle the case that we are
bulishing from an indirect buffer.
* org-table.el (org-table-copy-down): Fix bug with time stamp
increment.
* org-mouse.el (org-mouse-features): New option.
(org-mode-hook): Turn on features depending on
`org-mouse-features'.
* org.el (org-insert-heading-respect-content): Force heading
creation.
(org-insert-heading): keep the folding state of the heading before
the inserted one.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-archive.el (org-archive-to-archive-sibling): Handle top
level headlines better.
2008-10-26 Bastien Guerry <bzg@altern.org>
* org-export-latex.el (org-export-latex-classes): Added
\usepackage{graphicx} to the default list of packages.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter): Renamed from
`org-agenda-filter-tags'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-entry-properties): Add CATEGORY property, iven if it
is not defined as a property in this entry.
(org-add-log-note): Mask prefix argument when immediately storing
the note.
* org-agenda.el (org-agenda-filter-effort-default-operator): New
option.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Bugfix; code to find insertion point
after drawers was skipping ahead one line too many, so notes were
inserted after the first note instead of before it.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter-tags,org-agenda-filter-form):
New variables.
(org-prepare-agenda): Reset the filter tags.
(org-agenda-filter-by-tag, org-agenda-filter-by-tag-show-all):
Show filter tags in mode line.
* org-table.el (orgtbl-to-html): Bind `html-table-tag' for the
formatter.
* org-export-latex.el (org-latex-entities-regexp): New constant.
(org-export-as-pdf): Use two calls to `shell-command'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-treat-sub-super-char):
Honor the {} value of the subsuperscript setting. Make sure that
longer subsuperscripts are typeset in a roman font.
* org.el (org-clock-update-time-maybe): Compute negative clock
intervals correctly.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-add-log-setup): Respect
`org-log-state-notes-insert-after-drawers'.
(org-log-state-notes-insert-after-drawers): New option.
(org-todo-trigger-tag-changes): New function.
(org-todo): Call `org-todo-trigger-tag-changes'.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Only skip drawers if the are
immediately after the scheduling keywords.
* org-clock.el (org-clock-in-switch-to-state): Allow this to be a
function
(org-clock-in): If `org-clock-in-switch-to-state' is a function,
call it with the current todo state to get the state to switch to
when clocking in.
(org-clock-in): Use org-indent-line-function to indent clock lines.
(org-clock-find-position): Fix indentation of empty clock drawers.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-publish.el (org-publish-org-to): Handle case when
org-export-to-pdf does return a file name, not a buffer.
(org-publish-org-to-pdf): New function.
* org-export-latex.el (org-export-as-pdf)
(org-export-as-pdf-and-open): New commands.
* org-table.el (org-table-eval-formula): Avoid parsing Calc's HMS
forms as ranges.
* org-export-latex.el (org-export-latex-lists): Ignore lists-like
things in protexted regions.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-preprocess): Improve
quoting of LaTeX environments.
author | Carsten Dominik <dominik@science.uva.nl> |
---|---|
date | Sat, 25 Oct 2008 21:32:46 +0000 |
parents | a1e7d73546c4 |
children | e038c1a8307c |
rev | line source |
---|---|
9803 | 1 /* Heap management routines (including unexec) for GNU Emacs on Windows NT. |
75227
e90d04cd455a
Update copyright for years from Emacs 21 to present (mainly adding
Glenn Morris <rgm@gnu.org>
parents:
68651
diff
changeset
|
2 Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, |
79759 | 3 2006, 2007, 2008 Free Software Foundation, Inc. |
9803 | 4 |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
5 This file is part of GNU Emacs. |
9803 | 6 |
94994
29adfc9354e7
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79759
diff
changeset
|
7 GNU Emacs is free software: you can redistribute it and/or modify |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
8 it under the terms of the GNU General Public License as published by |
94994
29adfc9354e7
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79759
diff
changeset
|
9 the Free Software Foundation, either version 3 of the License, or |
29adfc9354e7
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
79759
diff
changeset
|
10 (at your option) any later version. |
9803 | 11 |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
12 GNU Emacs is distributed in the hope that it will be useful, |
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
13 but WITHOUT ANY WARRANTY; without even the implied warranty of |
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
15 GNU General Public License for more details. |
9803 | 16 |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11944
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
95011
a1e7d73546c4
Fix typo in previous change.
Juanma Barranquero <lekktu@gmail.com>
parents:
94994
diff
changeset
|
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
9803 | 19 |
20 Geoff Voelker (voelker@cs.washington.edu) 7-29-94 | |
21 */ | |
22 | |
23 #ifndef NTHEAP_H_ | |
24 #define NTHEAP_H_ | |
25 | |
26 #include <windows.h> | |
27 | |
24104 | 28 #define ROUND_UP(p, align) (((DWORD)(p) + (align)-1) & ~((align)-1)) |
29 #define ROUND_DOWN(p, align) ((DWORD)(p) & ~((align)-1)) | |
30 | |
9803 | 31 /* |
32 * Heap related stuff. | |
33 */ | |
11944
89ccf3b3208d
(get_data_region_base): Undefined.
Geoff Voelker <voelker@cs.washington.edu>
parents:
9803
diff
changeset
|
34 #define get_reserved_heap_size() reserved_heap_size |
9803 | 35 #define get_committed_heap_size() (get_data_end () - get_data_start ()) |
36 #define get_heap_start() get_data_start () | |
37 #define get_heap_end() get_data_end () | |
38 #define get_page_size() sysinfo_cache.dwPageSize | |
39 #define get_allocation_unit() sysinfo_cache.dwAllocationGranularity | |
40 #define get_processor_type() sysinfo_cache.dwProcessorType | |
16588
481b7874a1e9
Change identifiers of the form win32* to w32*.
Geoff Voelker <voelker@cs.washington.edu>
parents:
14186
diff
changeset
|
41 #define get_w32_major_version() w32_major_version |
481b7874a1e9
Change identifiers of the form win32* to w32*.
Geoff Voelker <voelker@cs.washington.edu>
parents:
14186
diff
changeset
|
42 #define get_w32_minor_version() w32_minor_version |
9803 | 43 |
44 extern unsigned char *get_data_start(); | |
45 extern unsigned char *get_data_end(); | |
11944
89ccf3b3208d
(get_data_region_base): Undefined.
Geoff Voelker <voelker@cs.washington.edu>
parents:
9803
diff
changeset
|
46 extern unsigned long reserved_heap_size; |
9803 | 47 extern SYSTEM_INFO sysinfo_cache; |
24887
c440aa9c1485
w32heap.h (osinfo_cache): Declare.
Geoff Voelker <voelker@cs.washington.edu>
parents:
24104
diff
changeset
|
48 extern OSVERSIONINFO osinfo_cache; |
24104 | 49 extern BOOL using_dynamic_heap; |
16588
481b7874a1e9
Change identifiers of the form win32* to w32*.
Geoff Voelker <voelker@cs.washington.edu>
parents:
14186
diff
changeset
|
50 extern int w32_major_version; |
481b7874a1e9
Change identifiers of the form win32* to w32*.
Geoff Voelker <voelker@cs.washington.edu>
parents:
14186
diff
changeset
|
51 extern int w32_minor_version; |
33214
3ee9bf6f1dd2
(w32_build_number): Add extern.
Andrew Innes <andrewi@gnu.org>
parents:
31112
diff
changeset
|
52 extern int w32_build_number; |
9803 | 53 |
19709
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
54 enum { |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
55 OS_WIN95 = 1, |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
56 OS_NT |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
57 }; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
58 |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
59 extern int os_subtype; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
60 |
9803 | 61 /* Emulation of Unix sbrk(). */ |
62 extern void *sbrk (unsigned long size); | |
63 | |
24104 | 64 /* Initialize heap structures for sbrk on startup. */ |
65 extern void init_heap (); | |
9803 | 66 |
67 /* Round the heap to this size. */ | |
68 extern void round_heap (unsigned long size); | |
69 | |
70 /* Cache system info, e.g., the NT page size. */ | |
71 extern void cache_system_info (void); | |
72 | |
19709
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
73 /* ----------------------------------------------------------------- */ |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
74 /* Useful routines for manipulating memory-mapped files. */ |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
75 |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
76 typedef struct file_data { |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
77 char *name; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
78 unsigned long size; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
79 HANDLE file; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
80 HANDLE file_mapping; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
81 unsigned char *file_base; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
82 } file_data; |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
83 |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
84 int open_input_file (file_data *p_file, char *name); |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
85 int open_output_file (file_data *p_file, char *name, unsigned long size); |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
86 void close_file_data (file_data *p_file); |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
87 |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
88 /* Return pointer to section header for named section. */ |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
89 IMAGE_SECTION_HEADER * find_section (char * name, IMAGE_NT_HEADERS * nt_header); |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
90 |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
91 /* Return pointer to section header for section containing the given |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
92 relative virtual address. */ |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
93 IMAGE_SECTION_HEADER * rva_to_section (DWORD rva, IMAGE_NT_HEADERS * nt_header); |
6b326be52f18
Enumerate operating system types.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16588
diff
changeset
|
94 |
9803 | 95 #endif /* NTHEAP_H_ */ |
52401 | 96 |
97 /* arch-tag: 3ba4cbe1-8a09-4a41-8f37-fd31f7426b3c | |
98 (do not change this comment) */ |