From 51e80b0e03270c7f953b7505bfdf86c02327bf2e Mon Sep 17 00:00:00 2001 From: shahfil Date: Sun, 5 May 2024 11:32:07 +0400 Subject: [PATCH] added examples --- README.md | 23 +++++++++++++++++++++++ examples/leak | Bin 0 -> 16520 bytes examples/leak.cpp | 17 +++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 README.md create mode 100755 examples/leak create mode 100644 examples/leak.cpp diff --git a/README.md b/README.md new file mode 100644 index 0000000..f55d63b --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +# Docker container for valgrind + +## Использование + +Запуск контейнера: +`docker run -it --rm -v $PWD/path/to/my/files:/valgrind shahfil/valgrind:latest` + +Запуск проверки в обычном режиме: +`valgrind ./your_executable` + +### Пример использования +``` +docker run -it --rm -v $PWD/examples:/valgrind shahfil/valgrind:latest + +make +valgrind ./leak +valgrind --leak-check=full -s ./leak +exit +``` +или то же самое одной командой: +``` +docker run -it --rm -v $PWD/examples:/valgrind shahfil/valgrind:latest /bin/bash -c "make && valgrind ./leak" +``` diff --git a/examples/leak b/examples/leak new file mode 100755 index 0000000000000000000000000000000000000000..6d230d19b375db6460c376f25fc0ceef531f06df GIT binary patch literal 16520 zcmeHOeQX@X6`#8}U`j|XB`Lvt(kiOxKTRMdkP0eCl~7QtHm!){h)^82RHlVoe{W{q zW^Z$c09EQgJJH^o_j?~R^LBPK<9+i;azjrv5)oYHiQ5HnCu0gpXu<1ibOj_K)`-jS zyIfo=E&|^mF(pqZ0;wt|qSdrf+!Q4!DP2v+wInNOog^% z%JHO_(6vVU3(^+Is4xxM4Qsm~?N(-jDYZeR|CF2lJni*qyN0-QBZ8FMVan~@1v`q% zr!9P&H|zH5-G@mXPp0~Iij~>S!0Psu*>rO@lP`}pkFHtWyt>^e6^u671?pEE7tN{l zo3_&JI7}Gd&ghup*&oT4XgTTM`^<|?w_kV2iEVx2@QqK{&yG&5eUEgg-(*8NRLCFS za^k7J02k?~cswcVgi)DtexFxqz@IAn5jrT3!*W(J7HvlXaO(Ky{k{C5e#j=KSg}haA?V@X0!s^|! z(Mmf-XDCy0o#K{_UD-n3*q0HAzMgl}X9d!eRFGagV13&+O@!J)Raiv!{RI@wA|rJ^eiM z@ZKT4cMIts{QLm_u|ch$mwyo8-wW`k{Cw+sy%Wd3ZBG2n9Diq~Z%eZEaO*L1U&rsz zi^|eJK=Yr2#-inqf<*xKb$kfK+&6!g$k*rGr3lThsE*KFQaQP3`55UP(G>c}r2Z|h z5V`rBIWc3t{P#P|m*?i0k)!7EbM6v2cuYHJtehN_<6wJ=-&n`17_KO<*lLbP^*7|>5KX=5r!oF}kI19Z;4zrZ*2l~`uqIVGnI-9`Vi=IpnE~-8{MBk z?*V=FY^6fq$hOT^DrZ1{4!QuFuqCKdi9EPjL`Gwgs}@|`IH_^^hCd4X8%d%2V*0cr zZooyKgZ95)sq6q13u8SCmwjW=r4KZYi94EZ`|7G2t|yrMQoARhCk+WiA>73^1-y>{ zU8t?SxXz-zrwL0gjD0`ab=gJH$I&B<573La(iq1#tK=I!`5VB02>F$Md7l&$5|%Im zVFbbmgb@fM5Jn)3Kp25A0$~Kg2z;staQ>N>Z>ICh=sOk_%4MU%JmtbsS)hoQzsxyY zZ|J-=xmSS>=eu2{^?A?Kqj4&~nZ>Td(`a zxn}gmk;+m@9MfOe$&>0a^5Y+TU(8GqoujEEZNqF+uDql_M0{Q$xYC0X%J`eiMG1XeTqP` zS5Jtz7GDlpOP}sz6xpCL{hVlZ5!ZMkfUnXx=WVinFDen__4aitg!)H?vaBQGOM;&Z z3F7A=T+}Wicy9{v2vzeNChU*r6K;ODwt zeCA;w5&Siz6@Xu_psHV$cODbR^nI6qh z<=h^~Sgt)J0F>PF;GmHb=M(NNH)o|N<-P>Xbio?R76$CBm39lol4X}iMXHb+$vUo+ zHd<HOuC;xZgsBT3?-@-WzjvF1YphFH-dg_EjwO@+@qfR>r%mfO`K&iyQ zg@-NZ3`LdGPdp1!a_Vv!+kuDWpmnu$( z)u{OGgXi$*dx^jB|C5Z-`o?e1>no;lR@5|T|1IGE!Wx(R&-(zTH)%V)9KN9cHsrJi zV0+#tFzut@qEH{H%H!wtdIlIR3E7_a9ZY$j0To%aJ7&dqQKL0H+w;1eDc?WtKkG4l z81}R$V1807GVRkXag4eD+<|?lP)ymL_bE){y2IQ)+w=IJ(e~@uAuDLg`y{d_8y2(u z^T4PH_V2AP^g4t0gHVwrc>kXR>bH+;JEl97nfJ@f7p5-+?8mf#DeJKV=9wM{*iUK! z(>^xTlFW6c0jSWj{1dB#76faWf@&-)NQ2hD+@=Z^~8ald{FjK=TT>%TMXUP;>c{;Y`i z%l1q!g0bITB(!RaqTCKUU_0jN8#rOyej=eHF>Sw$ocl_`SEnlN%Sc75ds4Pv;UTKR z?);SJj$bvQ9ro!7a}9*_w;Ap~zdtSk#(nqOPqr)Wnt+hoWnJ2i1yrQyXSXU1{yP@y H2krk0n!8SZ literal 0 HcmV?d00001 diff --git a/examples/leak.cpp b/examples/leak.cpp new file mode 100644 index 0000000..a7e593a --- /dev/null +++ b/examples/leak.cpp @@ -0,0 +1,17 @@ +#include +#include + +int +main (void) +{ + size_t *n = 0; + n = (size_t *) malloc (sizeof (size_t) * 3); + + for (size_t idx = 0; idx < 3; idx++) + { + *(n + idx) = idx; + std::cout << *(n + idx) << std::endl; + } + // free ((void *) n); + return 0; +}