~ubuntu-branches/ubuntu/trusty/virtualbox-lts-xenial/trusty-updates

« back to all changes in this revision

Viewing changes to src/VBox/Runtime/common/dbg/dbg.cpp

  • Committer: Package Import Robot
  • Author(s): Gianfranco Costamagna
  • Date: 2016-02-23 14:28:26 UTC
  • Revision ID: package-import@ubuntu.com-20160223142826-bdu69el2z6wa2a44
Tags: upstream-4.3.36-dfsg
ImportĀ upstreamĀ versionĀ 4.3.36-dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* $Id: dbg.cpp $ */
 
2
/** @file
 
3
 * IPRT - Debug Misc.
 
4
 */
 
5
 
 
6
/*
 
7
 * Copyright (C) 2009-2010 Oracle Corporation
 
8
 *
 
9
 * This file is part of VirtualBox Open Source Edition (OSE), as
 
10
 * available from http://www.virtualbox.org. This file is free software;
 
11
 * you can redistribute it and/or modify it under the terms of the GNU
 
12
 * General Public License (GPL) as published by the Free Software
 
13
 * Foundation, in version 2 as it comes in the "COPYING" file of the
 
14
 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
 
15
 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
 
16
 *
 
17
 * The contents of this file may alternatively be used under the terms
 
18
 * of the Common Development and Distribution License Version 1.0
 
19
 * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
 
20
 * VirtualBox OSE distribution, in which case the provisions of the
 
21
 * CDDL are applicable instead of those of the GPL.
 
22
 *
 
23
 * You may elect to license modified versions of this file under the
 
24
 * terms and conditions of either the GPL or the CDDL or both.
 
25
 */
 
26
 
 
27
/*******************************************************************************
 
28
*   Header Files                                                               *
 
29
*******************************************************************************/
 
30
#include <iprt/dbg.h>
 
31
#include "internal/iprt.h"
 
32
 
 
33
#include <iprt/mem.h>
 
34
 
 
35
 
 
36
 
 
37
/**
 
38
 * Allocate a new symbol structure.
 
39
 *
 
40
 * @returns Pointer to a new structure on success, NULL on failure.
 
41
 */
 
42
RTDECL(PRTDBGSYMBOL) RTDbgSymbolAlloc(void)
 
43
{
 
44
    return (PRTDBGSYMBOL)RTMemAllocZ(sizeof(RTDBGSYMBOL));
 
45
}
 
46
RT_EXPORT_SYMBOL(RTDbgSymbolAlloc);
 
47
 
 
48
 
 
49
/**
 
50
 * Duplicates a symbol structure.
 
51
 *
 
52
 * @returns Pointer to duplicate on success, NULL on failure.
 
53
 *
 
54
 * @param   pSymInfo        The symbol info to duplicate.
 
55
 */
 
56
RTDECL(PRTDBGSYMBOL) RTDbgSymbolDup(PCRTDBGSYMBOL pSymInfo)
 
57
{
 
58
    return (PRTDBGSYMBOL)RTMemDup(pSymInfo, sizeof(*pSymInfo));
 
59
}
 
60
RT_EXPORT_SYMBOL(RTDbgSymbolDup);
 
61
 
 
62
 
 
63
/**
 
64
 * Free a symbol structure previously allocated by a RTDbg method.
 
65
 *
 
66
 * @param   pSymInfo        The symbol info to free. NULL is ignored.
 
67
 */
 
68
RTDECL(void) RTDbgSymbolFree(PRTDBGSYMBOL pSymInfo)
 
69
{
 
70
    RTMemFree(pSymInfo);
 
71
}
 
72
RT_EXPORT_SYMBOL(RTDbgSymbolFree);
 
73
 
 
74
 
 
75
/**
 
76
 * Allocate a new line number structure.
 
77
 *
 
78
 * @returns Pointer to a new structure on success, NULL on failure.
 
79
 */
 
80
RTDECL(PRTDBGLINE) RTDbgLineAlloc(void)
 
81
{
 
82
    return (PRTDBGLINE)RTMemAllocZ(sizeof(RTDBGLINE));
 
83
}
 
84
RT_EXPORT_SYMBOL(RTDbgLineAlloc);
 
85
 
 
86
 
 
87
/**
 
88
 * Duplicates a line number structure.
 
89
 *
 
90
 * @returns Pointer to duplicate on success, NULL on failure.
 
91
 *
 
92
 * @param   pLine           The line number to duplicate.
 
93
 */
 
94
RTDECL(PRTDBGLINE) RTDbgLineDup(PCRTDBGLINE pLine)
 
95
{
 
96
    return (PRTDBGLINE)RTMemDup(pLine, sizeof(*pLine));
 
97
}
 
98
RT_EXPORT_SYMBOL(RTDbgLineDup);
 
99
 
 
100
 
 
101
/**
 
102
 * Free a line number structure previously allocated by a RTDbg method.
 
103
 *
 
104
 * @param   pLine           The line number to free. NULL is ignored.
 
105
 */
 
106
RTDECL(void) RTDbgLineFree(PRTDBGLINE pLine)
 
107
{
 
108
    RTMemFree(pLine);
 
109
}
 
110
RT_EXPORT_SYMBOL(RTDbgLineFree);
 
111